25 #ifndef OPENSUBDIV3_OSD_CPU_PATCH_TABLE_H
26 #define OPENSUBDIV3_OSD_CPU_PATCH_TABLE_H
28 #include "../version.h"
31 #include "../far/patchDescriptor.h"
32 #include "../osd/nonCopyable.h"
33 #include "../osd/types.h"
37 namespace OpenSubdiv {
38 namespace OPENSUBDIV_VERSION {
62 void *deviceContext = NULL) {
141 using namespace OPENSUBDIV_VERSION;
145 #endif // OPENSUBDIV3_OSD_CPU_PATCH_TABLE_H
size_t GetPatchParamSize() const
size_t GetFVarPatchParamSize(int fvarChannel=0) const
std::vector< int > _varyingIndexBuffer
size_t GetNumPatchArrays() const
std::vector< PatchParam > PatchParamVector
std::vector< PatchArrayVector > _fvarPatchArrays
std::vector< int > _indexBuffer
const int * GetVaryingPatchIndexBuffer() const
std::vector< std::vector< int > > _fvarIndexBuffers
const int * GetPatchIndexBuffer() const
const PatchArray * GetPatchArrayBuffer() const
const int * GetFVarPatchIndexBuffer(int fvarChannel=0) const
std::vector< PatchParamVector > _fvarParamBuffers
const PatchArray * GetVaryingPatchArrayBuffer() const
size_t GetPatchIndexSize() const
Container for arrays of parametric patches.
const PatchArray * GetFVarPatchArrayBuffer(int fvarChannel=0) const
CpuPatchTable(const Far::PatchTable *patchTable)
static CpuPatchTable * Create(const Far::PatchTable *patchTable, void *deviceContext=NULL)
PatchArrayVector _patchArrays
size_t GetFVarPatchIndexSize(int fvarChannel=0) const
PatchParamVector _patchParamBuffer
int GetNumFVarChannels() const
const PatchParam * GetPatchParamBuffer() const
size_t GetVaryingPatchIndexSize() const
std::vector< PatchArray > PatchArrayVector
PatchArrayVector _varyingPatchArrays
const PatchParam * GetFVarPatchParamBuffer(int fvarChannel=0) const