25 #ifndef OPENSUBDIV3_OSD_MTL_PATCH_TABLE_H 26 #define OPENSUBDIV3_OSD_MTL_PATCH_TABLE_H 28 #include "../version.h" 29 #include "../far/patchDescriptor.h" 30 #include "../osd/nonCopyable.h" 31 #include "../osd/types.h" 32 #include "../osd/mtlCommon.h" 39 namespace OPENSUBDIV_VERSION
56 template<
typename DEVICE_CONTEXT>
59 return Create(farPatchTable, context);
95 using namespace OPENSUBDIV_VERSION;
98 #endif //end OPENSUBDIV3_OSD_MTL_PATCH_TABLE_H id< MTLBuffer > GetPatchIndexBuffer() const
PatchArrayVector _patchArrays
Container for arrays of parametric patches.
PatchArrayVector const & GetPatchArrays() const
std::vector< PatchArrayVector > _fvarPatchArrays
PatchArrayVector const & GetVaryingPatchArrays() const
id< MTLBuffer > _indexBuffer
std::vector< id< MTLBuffer > > _fvarIndexBuffers
std::vector< PatchArray > PatchArrayVector
id< MTLBuffer > _patchParamBuffer
id< MTLBuffer > VertexBufferBinding
id< MTLBuffer > GetVaryingPatchIndexBuffer() const
id< MTLBuffer > _varyingPatchIndexBuffer
std::vector< id< MTLBuffer > > _fvarParamBuffers
PatchArrayVector _varyingPatchArrays
id< MTLBuffer > GetFVarPatchParamBuffer(int fvarChannel=0) const
int GetNumFVarChannels() const
static MTLPatchTable * Create(Far::PatchTable const *farPatchTable, DEVICE_CONTEXT context)
id< MTLBuffer > GetFVarPatchIndexBuffer(int fvarChannel=0) const
id< MTLBuffer > GetPatchParamBuffer() const
PatchArrayVector const & GetFVarPatchArrays(int fvarChannel=0) const