OpenSubdiv
Loading...
Searching...
No Matches
Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT > Class Template Reference

#include <mesh.h>

Inheritance diagram for Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >:
MeshInterface< PATCH_TABLE >

Public Types

typedef VERTEX_BUFFER VertexBuffer
 
typedef EVALUATOR Evaluator
 
typedef STENCIL_TABLE StencilTable
 
typedef PATCH_TABLE PatchTable
 
typedef DEVICE_CONTEXT DeviceContext
 
typedef EvaluatorCacheT< EvaluatorEvaluatorCache
 
typedef PatchTable::VertexBufferBinding VertexBufferBinding
 
- Public Types inherited from MeshInterface< PATCH_TABLE >
typedef PATCH_TABLE PatchTable
 
typedef PatchTable::VertexBufferBinding VertexBufferBinding
 

Public Member Functions

 Mesh (Far::TopologyRefiner *refiner, int numVertexElements, int numVaryingElements, int level, MeshBitset bits=MeshBitset(), EvaluatorCache *evaluatorCache=NULL, DeviceContext *deviceContext=NULL)
 
virtual ~Mesh ()
 
virtual void UpdateVertexBuffer (float const *vertexData, int startVertex, int numVerts)
 
virtual void UpdateVaryingBuffer (float const *varyingData, int startVertex, int numVerts)
 
virtual void Refine ()
 
virtual void Synchronize ()
 
virtual PatchTableGetPatchTable () const
 
virtual Far::PatchTable const * GetFarPatchTable () const
 
virtual int GetNumVertices () const
 
virtual int GetMaxValence () const
 
virtual VertexBufferBinding BindVertexBuffer ()
 
virtual VertexBufferBinding BindVaryingBuffer ()
 
virtual VertexBufferGetVertexBuffer ()
 
virtual VertexBufferGetVaryingBuffer ()
 
virtual Far::TopologyRefiner const * GetTopologyRefiner () const
 
- Public Member Functions inherited from MeshInterface< PATCH_TABLE >
 MeshInterface ()
 
virtual ~MeshInterface ()
 

Additional Inherited Members

- Static Protected Member Functions inherited from MeshInterface< PATCH_TABLE >
static void refineMesh (Far::TopologyRefiner &refiner, int level, bool adaptive, bool singleCreasePatch)
 
static void refineMesh (Far::TopologyRefiner &refiner, int level, MeshBitset bits)
 

Detailed Description

template<typename VERTEX_BUFFER, typename STENCIL_TABLE, typename EVALUATOR, typename PATCH_TABLE, typename DEVICE_CONTEXT = void>
class OpenSubdiv::OPENSUBDIV_VERSION::Osd::Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >

Definition at line 418 of file mesh.h.

Member Typedef Documentation

◆ DeviceContext

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
DEVICE_CONTEXT DeviceContext

Definition at line 424 of file mesh.h.

◆ Evaluator

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
EVALUATOR Evaluator

Definition at line 421 of file mesh.h.

◆ EvaluatorCache

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
EvaluatorCacheT<Evaluator> EvaluatorCache

Definition at line 425 of file mesh.h.

◆ PatchTable

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
PATCH_TABLE PatchTable

Definition at line 423 of file mesh.h.

◆ StencilTable

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
STENCIL_TABLE StencilTable

Definition at line 422 of file mesh.h.

◆ VertexBuffer

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
VERTEX_BUFFER VertexBuffer

Definition at line 420 of file mesh.h.

◆ VertexBufferBinding

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
PatchTable::VertexBufferBinding VertexBufferBinding

Definition at line 426 of file mesh.h.

Constructor & Destructor Documentation

◆ Mesh()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
Mesh ( Far::TopologyRefiner * refiner,
int numVertexElements,
int numVaryingElements,
int level,
MeshBitset bits = MeshBitset(),
EvaluatorCache * evaluatorCache = NULL,
DeviceContext * deviceContext = NULL )
inline

Definition at line 428 of file mesh.h.

◆ ~Mesh()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual ~Mesh ( )
inlinevirtual

Definition at line 478 of file mesh.h.

Member Function Documentation

◆ BindVaryingBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual VertexBufferBinding BindVaryingBuffer ( )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 566 of file mesh.h.

◆ BindVertexBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual VertexBufferBinding BindVertexBuffer ( )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 562 of file mesh.h.

◆ GetFarPatchTable()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual Far::PatchTable const * GetFarPatchTable ( ) const
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 554 of file mesh.h.

◆ GetMaxValence()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual int GetMaxValence ( ) const
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 560 of file mesh.h.

◆ GetNumVertices()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual int GetNumVertices ( ) const
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 558 of file mesh.h.

◆ GetPatchTable()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual PatchTable * GetPatchTable ( ) const
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 550 of file mesh.h.

◆ GetTopologyRefiner()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual Far::TopologyRefiner const * GetTopologyRefiner ( ) const
inlinevirtual

Definition at line 578 of file mesh.h.

◆ GetVaryingBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual VertexBuffer * GetVaryingBuffer ( )
inlinevirtual

Definition at line 574 of file mesh.h.

◆ GetVertexBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual VertexBuffer * GetVertexBuffer ( )
inlinevirtual

Definition at line 570 of file mesh.h.

◆ Refine()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual void Refine ( )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 501 of file mesh.h.

◆ Synchronize()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual void Synchronize ( )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 546 of file mesh.h.

◆ UpdateVaryingBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual void UpdateVaryingBuffer ( float const * varyingData,
int startVertex,
int numVerts )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 495 of file mesh.h.

◆ UpdateVertexBuffer()

template<typename VERTEX_BUFFER , typename STENCIL_TABLE , typename EVALUATOR , typename PATCH_TABLE , typename DEVICE_CONTEXT = void>
virtual void UpdateVertexBuffer ( float const * vertexData,
int startVertex,
int numVerts )
inlinevirtual

Implements MeshInterface< PATCH_TABLE >.

Definition at line 489 of file mesh.h.


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