25 #ifndef OPENSUBDIV3_OSD_CUDA_PATCH_TABLE_H
26 #define OPENSUBDIV3_OSD_CUDA_PATCH_TABLE_H
28 #include "../version.h"
30 #include "../osd/nonCopyable.h"
31 #include "../osd/types.h"
36 namespace OPENSUBDIV_VERSION {
55 void *deviceContext = NULL);
115 using namespace OPENSUBDIV_VERSION;
119 #endif // OPENSUBDIV3_OSD_CUDA_PATCH_TABLE_H
void * GetPatchParamBuffer() const
Returns the cuda memory of the array of Osd::PatchParam buffer.
void * _varyingIndexBuffer
void * GetVaryingPatchIndexBuffer() const
Returns the cuda memory of the array of varying control vertices.
bool allocate(Far::PatchTable const *patchTable)
void * GetFVarPatchArrayBuffer(int fvarChannel) const
Returns the cuda memory of the array of Osd::PatchArray buffer.
static CudaPatchTable * Create(Far::PatchTable const *patchTable, void *deviceContext=NULL)
Creator. Returns NULL if error.
void * _varyingPatchArrays
~CudaPatchTable()
Destructor.
int GetNumFVarChannels() const
Returns the number of face-varying channels buffers.
Container for arrays of parametric patches.
void * GetPatchIndexBuffer() const
Returns the cuda memory of the patch control vertices.
void * GetPatchArrayBuffer() const
Returns the cuda memory of the array of Osd::PatchArray buffer.
void * GetFVarPatchIndexBuffer(int fvarChannel=0) const
Returns the cuda memory of the array of face-varying control vertices.
void * GetFVarPatchParamBuffer(int fvarChannel=0) const
Returns the cuda memory of the array of face-varying param.
std::vector< void * > _fvarPatchArrays
std::vector< void * > _fvarIndexBuffers
void * GetVaryingPatchArrayBuffer() const
Returns the cuda memory of the array of Osd::PatchArray buffer.
std::vector< void * > _fvarParamBuffers