OpenSubdiv: MeshInterface< PATCH_TABLE > Class Template Reference

| OpenSubdiv

Loading...
Searching...
No Matches
MeshInterface< PATCH_TABLE > Class Template Referenceabstract

`#include <mesh.h>`

Inheritance diagram for MeshInterface< PATCH_TABLE >:

## Public Types
typedef PATCH_TABLE | PatchTable
typedef PatchTable::VertexBufferBinding | VertexBufferBinding

## Public Member Functions
| MeshInterface ()
virtual | ~MeshInterface ()
virtual int | GetNumVertices () const =0
virtual int | GetMaxValence () const =0
virtual void | UpdateVertexBuffer (float const *vertexData, int startVertex, int numVerts)=0
virtual void | UpdateVaryingBuffer (float const *varyingData, int startVertex, int numVerts)=0
virtual void | Refine ()=0
virtual void | Synchronize ()=0
virtual PatchTable * | GetPatchTable () const =0
virtual Far::PatchTable const * | GetFarPatchTable () const =0
virtual VertexBufferBinding | BindVertexBuffer ()=0
virtual VertexBufferBinding | BindVaryingBuffer ()=0

## Static Protected Member Functions
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<class PATCH_TABLE>
class OpenSubdiv::OPENSUBDIV_VERSION::Osd::MeshInterface< PATCH_TABLE >

Definition at line 68 of file mesh.h.

## Member Typedef Documentation

## ◆ PatchTable

template<class PATCH_TABLE>

typedef PATCH_TABLE PatchTable

Definition at line 70 of file mesh.h.

## ◆ VertexBufferBinding

template<class PATCH_TABLE>

typedef PatchTable::VertexBufferBinding VertexBufferBinding

Definition at line 71 of file mesh.h.

## Constructor & Destructor Documentation

## ◆ MeshInterface()

template<class PATCH_TABLE>

MeshInterface | ( |  | ) |
| inline

Definition at line 74 of file mesh.h.

## ◆ ~MeshInterface()

template<class PATCH_TABLE>

virtual ~MeshInterface | ( |  | ) |
| inlinevirtual

Definition at line 76 of file mesh.h.

## Member Function Documentation

## ◆ BindVaryingBuffer()

template<class PATCH_TABLE>

virtual VertexBufferBinding BindVaryingBuffer | ( |  | ) |
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ BindVertexBuffer()

template<class PATCH_TABLE>

virtual VertexBufferBinding BindVertexBuffer | ( |  | ) |
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ GetFarPatchTable()

template<class PATCH_TABLE>

virtual Far::PatchTable const * GetFarPatchTable | ( |  | ) | const
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ GetMaxValence()

template<class PATCH_TABLE>

virtual int GetMaxValence | ( |  | ) | const
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ GetNumVertices()

template<class PATCH_TABLE>

virtual int GetNumVertices | ( |  | ) | const
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ GetPatchTable()

template<class PATCH_TABLE>

virtual PatchTable * GetPatchTable | ( |  | ) | const
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ Refine()

template<class PATCH_TABLE>

virtual void Refine | ( |  | ) |
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ refineMesh() [1/2]

template<class PATCH_TABLE>

void refineMesh | ( | Far::TopologyRefiner & | refiner,
|  | int | level,
|  | bool | adaptive,
|  | bool | singleCreasePatch )
| inlinestaticprotected

Definition at line 101 of file mesh.h.

## ◆ refineMesh() [2/2]

template<class PATCH_TABLE>

void refineMesh | ( | Far::TopologyRefiner & | refiner,
|  | int | level,
|  | MeshBitset | bits )
| inlinestaticprotected

Definition at line 117 of file mesh.h.

## ◆ Synchronize()

template<class PATCH_TABLE>

virtual void Synchronize | ( |  | ) |
| pure virtual

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ UpdateVaryingBuffer()

template<class PATCH_TABLE>

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

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

## ◆ UpdateVertexBuffer()

template<class PATCH_TABLE>

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

Implemented in Mesh< VERTEX_BUFFER, STENCIL_TABLE, EVALUATOR, PATCH_TABLE, DEVICE_CONTEXT >.

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

- opensubdiv/osd/mesh.h