OpenSubdiv
Loading...
Searching...
No Matches
MTLPatchTable Class Reference

#include <mtlPatchTable.h>

Inheritance diagram for MTLPatchTable:

Public Types

typedef id< MTLBuffer > VertexBufferBinding
 

Public Member Functions

 MTLPatchTable ()
 
 ~MTLPatchTable ()
 
PatchArrayVector const & GetPatchArrays () const
 
id< MTLBuffer > GetPatchIndexBuffer () const
 
id< MTLBuffer > GetPatchParamBuffer () const
 
PatchArrayVector const & GetVaryingPatchArrays () const
 
id< MTLBuffer > GetVaryingPatchIndexBuffer () const
 
int GetNumFVarChannels () const
 
PatchArrayVector const & GetFVarPatchArrays (int fvarChannel=0) const
 
id< MTLBuffer > GetFVarPatchIndexBuffer (int fvarChannel=0) const
 
id< MTLBuffer > GetFVarPatchParamBuffer (int fvarChannel=0) const
 

Static Public Member Functions

template<typename DEVICE_CONTEXT >
static MTLPatchTableCreate (Far::PatchTable const *farPatchTable, DEVICE_CONTEXT context)
 
static MTLPatchTableCreate (Far::PatchTable const *farPatchTable, MTLContext *context)
 

Protected Member Functions

bool allocate (Far::PatchTable const *farPatchTable, MTLContext *context)
 

Protected Attributes

PatchArrayVector _patchArrays
 
id< MTLBuffer > _indexBuffer
 
id< MTLBuffer > _patchParamBuffer
 
PatchArrayVector _varyingPatchArrays
 
id< MTLBuffer > _varyingPatchIndexBuffer
 
std::vector< PatchArrayVector_fvarPatchArrays
 
std::vector< id< MTLBuffer > > _fvarIndexBuffers
 
std::vector< id< MTLBuffer > > _fvarParamBuffers
 

Detailed Description

Definition at line 46 of file mtlPatchTable.h.

Member Typedef Documentation

◆ VertexBufferBinding

typedef id<MTLBuffer> VertexBufferBinding

Definition at line 48 of file mtlPatchTable.h.

Constructor & Destructor Documentation

◆ MTLPatchTable()

◆ ~MTLPatchTable()

Member Function Documentation

◆ allocate()

bool allocate ( Far::PatchTable const *  farPatchTable,
MTLContext context 
)
protected

◆ Create() [1/2]

static MTLPatchTable * Create ( Far::PatchTable const *  farPatchTable,
DEVICE_CONTEXT  context 
)
inlinestatic

Definition at line 54 of file mtlPatchTable.h.

◆ Create() [2/2]

static MTLPatchTable * Create ( Far::PatchTable const *  farPatchTable,
MTLContext context 
)
static

◆ GetFVarPatchArrays()

PatchArrayVector const & GetFVarPatchArrays ( int  fvarChannel = 0) const
inline

Definition at line 69 of file mtlPatchTable.h.

◆ GetFVarPatchIndexBuffer()

id< MTLBuffer > GetFVarPatchIndexBuffer ( int  fvarChannel = 0) const
inline

Definition at line 70 of file mtlPatchTable.h.

◆ GetFVarPatchParamBuffer()

id< MTLBuffer > GetFVarPatchParamBuffer ( int  fvarChannel = 0) const
inline

Definition at line 71 of file mtlPatchTable.h.

◆ GetNumFVarChannels()

int GetNumFVarChannels ( ) const
inline

Definition at line 68 of file mtlPatchTable.h.

◆ GetPatchArrays()

PatchArrayVector const & GetPatchArrays ( ) const
inline

Definition at line 61 of file mtlPatchTable.h.

◆ GetPatchIndexBuffer()

id< MTLBuffer > GetPatchIndexBuffer ( ) const
inline

Definition at line 62 of file mtlPatchTable.h.

◆ GetPatchParamBuffer()

id< MTLBuffer > GetPatchParamBuffer ( ) const
inline

Definition at line 63 of file mtlPatchTable.h.

◆ GetVaryingPatchArrays()

PatchArrayVector const & GetVaryingPatchArrays ( ) const
inline

Definition at line 65 of file mtlPatchTable.h.

◆ GetVaryingPatchIndexBuffer()

id< MTLBuffer > GetVaryingPatchIndexBuffer ( ) const
inline

Definition at line 66 of file mtlPatchTable.h.

Member Data Documentation

◆ _fvarIndexBuffers

std::vector<id<MTLBuffer> > _fvarIndexBuffers
protected

Definition at line 86 of file mtlPatchTable.h.

◆ _fvarParamBuffers

std::vector<id<MTLBuffer> > _fvarParamBuffers
protected

Definition at line 87 of file mtlPatchTable.h.

◆ _fvarPatchArrays

std::vector<PatchArrayVector> _fvarPatchArrays
protected

Definition at line 85 of file mtlPatchTable.h.

◆ _indexBuffer

id<MTLBuffer> _indexBuffer
protected

Definition at line 78 of file mtlPatchTable.h.

◆ _patchArrays

PatchArrayVector _patchArrays
protected

Definition at line 76 of file mtlPatchTable.h.

◆ _patchParamBuffer

id<MTLBuffer> _patchParamBuffer
protected

Definition at line 79 of file mtlPatchTable.h.

◆ _varyingPatchArrays

PatchArrayVector _varyingPatchArrays
protected

Definition at line 81 of file mtlPatchTable.h.

◆ _varyingPatchIndexBuffer

id<MTLBuffer> _varyingPatchIndexBuffer
protected

Definition at line 83 of file mtlPatchTable.h.


The documentation for this class was generated from the following file: