All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Mesh< VERTEX_BUFFER, COMPUTE_CONTROLLER, DRAW_CONTEXT > Class Template Reference

#include <mesh.h>

Inheritance diagram for Mesh< VERTEX_BUFFER, COMPUTE_CONTROLLER, DRAW_CONTEXT >:
MeshInterface< DRAW_CONTEXT >

Public Types

typedef VERTEX_BUFFER VertexBuffer
 
typedef COMPUTE_CONTROLLER ComputeController
 
typedef
ComputeController::ComputeContext 
ComputeContext
 
typedef DRAW_CONTEXT DrawContext
 
typedef
DrawContext::VertexBufferBinding 
VertexBufferBinding
 
- Public Types inherited from MeshInterface< DRAW_CONTEXT >
typedef DRAW_CONTEXT DrawContext
 
typedef
DrawContext::VertexBufferBinding 
VertexBufferBinding
 

Public Member Functions

 Mesh (ComputeController *computeController, Far::TopologyRefiner *refiner, int numVertexElements, int numVaryingElements, int level, MeshBitset bits=MeshBitset())
 
 Mesh (ComputeController *computeController, Far::TopologyRefiner *refiner, VertexBuffer *vertexBuffer, VertexBuffer *varyingBuffer, ComputeContext *computeContext, DrawContext *drawContext)
 
virtual ~Mesh ()
 
virtual int GetNumVertices () const
 
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 Refine (VertexBufferDescriptor const *vertexDesc, VertexBufferDescriptor const *varyingDesc)
 
virtual void Synchronize ()
 
virtual VertexBufferBinding BindVertexBuffer ()
 
virtual VertexBufferBinding BindVaryingBuffer ()
 
virtual DrawContextGetDrawContext ()
 
virtual void SetFVarDataChannel (int fvarWidth, std::vector< float > const &fvarData)
 
- Public Member Functions inherited from MeshInterface< DRAW_CONTEXT >
 MeshInterface ()
 
virtual ~MeshInterface ()
 
virtual void Refine (VertexBufferDescriptor const *vertexDesc, VertexBufferDescriptor const *varyingDesc, bool interleaved)=0
 

Additional Inherited Members

- Static Protected Member Functions inherited from MeshInterface< DRAW_CONTEXT >
static int getNumVertices (Far::TopologyRefiner const &refiner)
 
static void refineMesh (Far::TopologyRefiner &refiner, int level, bool adaptive)
 

Detailed Description

template<class VERTEX_BUFFER, class COMPUTE_CONTROLLER, class DRAW_CONTEXT>
class OpenSubdiv::OPENSUBDIV_VERSION::Osd::Mesh< VERTEX_BUFFER, COMPUTE_CONTROLLER, DRAW_CONTEXT >

Definition at line 114 of file mesh.h.

Member Typedef Documentation

typedef ComputeController::ComputeContext ComputeContext

Definition at line 118 of file mesh.h.

typedef COMPUTE_CONTROLLER ComputeController

Definition at line 117 of file mesh.h.

typedef DRAW_CONTEXT DrawContext

Definition at line 119 of file mesh.h.

typedef VERTEX_BUFFER VertexBuffer

Definition at line 116 of file mesh.h.

typedef DrawContext::VertexBufferBinding VertexBufferBinding

Definition at line 120 of file mesh.h.

Constructor & Destructor Documentation

Mesh ( ComputeController computeController,
Far::TopologyRefiner refiner,
int  numVertexElements,
int  numVaryingElements,
int  level,
MeshBitset  bits = MeshBitset() 
)
inline

Definition at line 122 of file mesh.h.

Mesh ( ComputeController computeController,
Far::TopologyRefiner refiner,
VertexBuffer vertexBuffer,
VertexBuffer varyingBuffer,
ComputeContext computeContext,
DrawContext drawContext 
)
inline

Definition at line 147 of file mesh.h.

virtual ~Mesh ( )
inlinevirtual

Definition at line 161 of file mesh.h.

Member Function Documentation

virtual VertexBufferBinding BindVaryingBuffer ( )
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 199 of file mesh.h.

virtual VertexBufferBinding BindVertexBuffer ( )
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 195 of file mesh.h.

virtual DrawContext* GetDrawContext ( )
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 203 of file mesh.h.

virtual int GetNumVertices ( ) const
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 170 of file mesh.h.

virtual void Refine ( )
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 183 of file mesh.h.

virtual void Refine ( VertexBufferDescriptor const *  vertexDesc,
VertexBufferDescriptor const *  varyingDesc 
)
inlinevirtual

Definition at line 187 of file mesh.h.

virtual void SetFVarDataChannel ( int  fvarWidth,
std::vector< float > const &  fvarData 
)
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 207 of file mesh.h.

virtual void Synchronize ( )
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 191 of file mesh.h.

virtual void UpdateVaryingBuffer ( float const *  varyingData,
int  startVertex,
int  numVerts 
)
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 179 of file mesh.h.

virtual void UpdateVertexBuffer ( float const *  vertexData,
int  startVertex,
int  numVerts 
)
inlinevirtual

Implements MeshInterface< DRAW_CONTEXT >.

Definition at line 175 of file mesh.h.


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