Developer Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ACG::MeshCompiler::VertexSplitter Struct Reference

Public Member Functions

 VertexSplitter (int numAttribs, int numVerts, int numWorstCase=0, float estBufferIncrease=0.5f)
int split (int *vertex)
 returns a unique index for a vertex-attribute combination
bool isIsolated (const int vertexPosID)
 check if vertex is isolated with a complete splitting list
int getNext (const int id)
int * getAttribs (const int id)
void setNext (const int id, const int next)
void setAttribs (const int id, int *attr)

Public Attributes

int numAttribs
int numVerts
 number of vertex combinations currently in use
const int numBaseVerts
 number of input vertex positions
std::vector< int > splits
int dbg_numResizes
int dbg_numSplits

Detailed Description

Definition at line 895 of file MeshCompiler.hh.

Member Data Documentation

std::vector<int> ACG::MeshCompiler::VertexSplitter::splits

split list format: for each vertex: [next split, attribute ids] next split: -1 -> not split yet i -> index into split list for next combination with the same vertex position id (single linked list)

attribute ids: array of attribute indices into input buffers, that makes up the complete vertex -1 -> vertex not used yet (relevant for split() only)

Definition at line 932 of file MeshCompiler.hh.

The documentation for this struct was generated from the following files: