| 
    HDK
    
   | 
 
#include <RE_VertexArray.h>
Classes | |
| class | re_VertexArrayCB | 
Static Public Member Functions | |
| static RE_VertexArray * | newAttribArray (const UT_StringHolder &name, int num_elements=0, const char *cachename=nullptr, RE_ArrayType at=RE_ARRAY_POINT, int capacity=0) | 
| static RE_VertexArray * | newElementArray (int num_elements=0, const char *cachename=nullptr, int capacity=0) | 
| static RE_VertexArray * | newArrayContainer (RE_OGLBufferHandle &array, const char *cachename=nullptr, RE_ArrayType at=RE_ARRAY_POINT) | 
| static RE_VertexArray * | newArrayContainer (UT_Array< RE_OGLBufferHandle > &array, const char *cachename=nullptr, RE_ArrayType at=RE_ARRAY_POINT) | 
| static void | getAttribCacheName (UT_WorkBuffer &str, const char *name, RE_ArrayType attrib_type, const char *cachename) | 
Protected Member Functions | |
| RE_VertexArray (RE_BufferType type, int nelements=0, int capacity=0) | |
| RE_VertexArray (const UT_StringHolder &name, int nelements=0, int capacity=0) | |
| RE_VertexArray (const RE_VertexArray &va) | |
| RE_VertexArray & | operator= (const RE_VertexArray &va)=delete | 
| void | detachTexBuffer (int index) | 
| void | generateCacheName (UT_StringHolder &cachename, int index) const | 
Protected Attributes | |
| UT_StringHolder | myCacheName | 
| UT_StringHolder | myAttribName | 
| RE_BufferType | myBufferType | 
| RE_GPUType | myType | 
| int | myVectorSize | 
| int | myLength | 
| int | myLengthScale | 
| int | myCapacity | 
| int | myInstanceStride | 
| UT_Array< RE_OGLBufferHandle > | myArray | 
| RE_OGLConstAttribute * | myConstAttrib | 
| RE_CacheTagHandle | myCacheTagHandle | 
| RE_BufferUsageHint | myUsage | 
| bool | myInUse | 
| bool | myMappedFlag [4] | 
| bool | myConstantFlag | 
| bool | myNormalizedFlag | 
| RE_ArrayType | myArrayType | 
| RE_GenericAttribID | myGenID | 
| int | myInstanceGroup | 
| RE_PersistentBufferMode | myPersistentBufferMode | 
| bool | myPersistentMapCopied | 
| bool | myDefaultValue | 
| bool | myAllowShared | 
| UT_Array< re_VertexArrayCB > | myRefs | 
Static Protected Attributes | |
| static RE_OGLBufferHandle | theNullArray | 
Definition at line 31 of file RE_VertexArray.h.
| RE_VertexArray::~RE_VertexArray | ( | ) | 
      
  | 
  protected | 
      
  | 
  protected | 
      
  | 
  protected | 
| void RE_VertexArray::adoptArrays | ( | const UT_Array< RE_OGLBufferHandle > & | buffers, | 
| const UT_StringHolder & | cachename | ||
| ) | 
      
  | 
  inline | 
Definition at line 79 of file RE_VertexArray.h.
| bool RE_VertexArray::attachTexBuffer | ( | RE_Render * | r, | 
| RE_Texture * | tex | ||
| ) | 
| bool RE_VertexArray::bind | ( | RE_Render * | r, | 
| unsigned int | stride = 0,  | 
        ||
| bool | geo_obj = false,  | 
        ||
| const char * | shader_attrib = nullptr  | 
        ||
| ) | 
| bool RE_VertexArray::bindBuffer | ( | RE_Render * | r, | 
| RE_BufferBinding | point, | ||
| int | index = 0,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | 
      
  | 
  inline | 
Definition at line 71 of file RE_VertexArray.h.
| UT_UniquePtr<RE_VertexArray> RE_VertexArray::clone | ( | ) | const | 
| void RE_VertexArray::createConstant | ( | ) | 
| void RE_VertexArray::drawPrims | ( | RE_Render * | r, | 
| RE_PrimType | prim, | ||
| unsigned int | stride, | ||
| int | num_instances, | ||
| bool | enable_arrays, | ||
| int | vertices_per_patch | ||
| ) | 
| void RE_VertexArray::drawSomePrims | ( | RE_Render * | r, | 
| RE_PrimType | prim, | ||
| int | start, | ||
| int | num, | ||
| int | num_instances, | ||
| bool | enable_arrays, | ||
| int | vertices_per_patch | ||
| ) | 
| void RE_VertexArray::drawSomePrims | ( | RE_Render * | r, | 
| RE_PrimType | prim, | ||
| RE_VertexArray * | index_array, | ||
| int | index_offset, | ||
| int | index_num_elements, | ||
| int | num_instances, | ||
| bool | enable_arrays, | ||
| int | vertices_per_patch | ||
| ) | 
      
  | 
  protected | 
| bool RE_VertexArray::getArray | ( | RE_Render * | r, | 
| void * | data, | ||
| int | offset = 0,  | 
        ||
| int | sublen = 0,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | const | 
      
  | 
  inline | 
Definition at line 304 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 307 of file RE_VertexArray.h.
      
  | 
  static | 
      
  | 
  inline | 
Definition at line 306 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 297 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 73 of file RE_VertexArray.h.
| RE_CacheVersion RE_VertexArray::getCacheVersion | ( | ) | const | 
      
  | 
  inline | 
Definition at line 302 of file RE_VertexArray.h.
| fpreal64* RE_VertexArray::getConstant | ( | ) | 
| const fpreal64* RE_VertexArray::getConstant | ( | ) | const | 
      
  | 
  inline | 
Definition at line 298 of file RE_VertexArray.h.
| RE_CachedExtraDataHandle RE_VertexArray::getExtraBufferData | ( | ) | const | 
      
  | 
  inline | 
Definition at line 331 of file RE_VertexArray.h.
| void RE_VertexArray::getGLName | ( | UT_StringHolder & | name | ) | const | 
| void RE_VertexArray::getHoudiniName | ( | UT_StringHolder & | name | ) | const | 
      
  | 
  inline | 
Definition at line 313 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 312 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 300 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 301 of file RE_VertexArray.h.
| int64 RE_VertexArray::getMemoryUsage | ( | bool | inclusive | ) | const | 
Returns the amount of main memory (NOT graphics memory!) owned by this RE_VertexArray.
      
  | 
  inline | 
Definition at line 303 of file RE_VertexArray.h.
| int64 RE_VertexArray::getSizeBytes | ( | ) | const | 
      
  | 
  inline | 
Definition at line 384 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 299 of file RE_VertexArray.h.
| bool RE_VertexArray::initialize | ( | RE_Render * | r, | 
| bool * | created = nullptr  | 
        ||
| ) | 
| bool RE_VertexArray::isBufferBound | ( | int | array_index = 0 | ) | const | 
      
  | 
  inline | 
Definition at line 309 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 202 of file RE_VertexArray.h.
| bool RE_VertexArray::isPersistentMap | ( | ) | const | 
      
  | 
  inline | 
Definition at line 84 of file RE_VertexArray.h.
| void* RE_VertexArray::map | ( | RE_Render * | r, | 
| RE_BufferAccess | access = RE_BUFFER_WRITE_ONLY,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | 
| void* RE_VertexArray::mapRange | ( | RE_Render * | r, | 
| int | start, | ||
| int | length, | ||
| RE_BufferAccess | access = RE_BUFFER_WRITE_ONLY,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | 
      
  | 
  inline | 
Definition at line 201 of file RE_VertexArray.h.
| void RE_VertexArray::markAsUnused | ( | bool | move_to_unused_cache = true | ) | 
| void RE_VertexArray::markAsUsed | ( | ) | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  static | 
      
  | 
  protecteddelete | 
| void RE_VertexArray::print | ( | std::ostream * | os = nullptr | ) | const | 
| void RE_VertexArray::printValues | ( | RE_Render * | r, | 
| std::ostream & | os, | ||
| int | start = 0,  | 
        ||
| int | len = 0  | 
        ||
| ) | const | 
Definition at line 161 of file RE_VertexArray.h.
      
  | 
  inline | 
Definition at line 166 of file RE_VertexArray.h.
| void RE_VertexArray::resetBuffer | ( | bool | delete_cached = false,  | 
        
| bool | mark_as_unused = true  | 
        ||
| ) | 
| bool RE_VertexArray::setArray | ( | RE_Render * | r, | 
| const void * | data, | ||
| int | offset = 0,  | 
        ||
| int | sublen = 0,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | 
      
  | 
  inline | 
Definition at line 149 of file RE_VertexArray.h.
| void RE_VertexArray::setAttributeName | ( | const char * | attrib | ) | 
| void RE_VertexArray::setBufferType | ( | RE_BufferType | type | ) | 
| void RE_VertexArray::setCacheTag | ( | RE_CacheTagHandle | h | ) | 
| void RE_VertexArray::setCacheVersion | ( | RE_CacheVersion | v | ) | 
| bool RE_VertexArray::setCapacity | ( | int | cap | ) | 
| bool RE_VertexArray::setExtraBufferData | ( | RE_CachedExtraData * | data | ) | 
| void RE_VertexArray::setFormat | ( | RE_GPUType | type, | 
| int | vectorsize, | ||
| bool | normalized = true  | 
        ||
| ) | 
      
  | 
  inline | 
Definition at line 328 of file RE_VertexArray.h.
Definition at line 144 of file RE_VertexArray.h.
| void RE_VertexArray::setPersistent | ( | RE_PersistentBufferMode | mode | ) | 
Set the buffer to use persistent mapped buffers, optionally with coherent behaviour (writes seen automatically). RE_EXT_BUFFER_STORAGE must be supported, or false will be returned and the setting will have no effect.
| bool RE_VertexArray::setupForAttribIndex | ( | RE_Render * | r, | 
| int | attrib_location, | ||
| RE_GPUType | t, | ||
| int | stride | ||
| ) | 
| void RE_VertexArray::setUsage | ( | RE_BufferUsageHint | h | ) | 
Hint to the GL driver how this buffer will be used. May only be set before the buffer is created (initialize(), setArray(), etc).
| bool RE_VertexArray::unbind | ( | RE_Render * | r | ) | 
| bool RE_VertexArray::unbindAttrib | ( | RE_Render * | r | ) | 
| bool RE_VertexArray::unbindBuffer | ( | RE_Render * | r, | 
| RE_BufferBinding | point, | ||
| int | index = 0,  | 
        ||
| int | array_index = 0  | 
        ||
| ) | 
      
  | 
  protected | 
Definition at line 370 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 354 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 364 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 346 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 347 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 345 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 357 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 352 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 362 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 356 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 369 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 365 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 366 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 353 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 359 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 350 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 351 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 361 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 363 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 367 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 368 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 380 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 348 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 358 of file RE_VertexArray.h.
      
  | 
  protected | 
Definition at line 349 of file RE_VertexArray.h.
      
  | 
  staticprotected | 
Definition at line 355 of file RE_VertexArray.h.