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"
38namespace OPENSUBDIV_VERSION {
62 void *deviceContext = NULL) {
141using namespace OPENSUBDIV_VERSION;
std::vector< PatchParam > PatchParamVector
std::vector< PatchArray > PatchArrayVector
Container for arrays of parametric patches.
const PatchArray * GetFVarPatchArrayBuffer(int fvarChannel=0) const
const int * GetVaryingPatchIndexBuffer() const
std::vector< int > _varyingIndexBuffer
size_t GetFVarPatchParamSize(int fvarChannel=0) const
PatchParamVector _patchParamBuffer
const int * GetPatchIndexBuffer() const
static CpuPatchTable * Create(const Far::PatchTable *patchTable, void *deviceContext=NULL)
std::vector< PatchParamVector > _fvarParamBuffers
CpuPatchTable(const Far::PatchTable *patchTable)
std::vector< std::vector< int > > _fvarIndexBuffers
size_t GetPatchIndexSize() const
PatchArrayVector _patchArrays
const PatchParam * GetPatchParamBuffer() const
std::vector< int > _indexBuffer
size_t GetFVarPatchIndexSize(int fvarChannel=0) const
const int * GetFVarPatchIndexBuffer(int fvarChannel=0) const
const PatchParam * GetFVarPatchParamBuffer(int fvarChannel=0) const
size_t GetPatchParamSize() const
size_t GetVaryingPatchIndexSize() const
const PatchArray * GetVaryingPatchArrayBuffer() const
int GetNumFVarChannels() const
size_t GetNumPatchArrays() const
const PatchArray * GetPatchArrayBuffer() const
PatchArrayVector _varyingPatchArrays
std::vector< PatchArrayVector > _fvarPatchArrays