24 #ifndef OPENSUBDIV3_FAR_TOPOLOGY_DESCRIPTOR_H
25 #define OPENSUBDIV3_FAR_TOPOLOGY_DESCRIPTOR_H
27 #include "../version.h"
29 #include "../far/topologyRefiner.h"
30 #include "../far/topologyRefinerFactory.h"
31 #include "../far/error.h"
36 namespace OPENSUBDIV_VERSION {
121 using namespace OPENSUBDIV_VERSION;
float const * creaseWeights
static void reportInvalidTopology(TopologyError errCode, char const *msg, MESH const &mesh)
(Optional) Control run-time topology validation and error reporting
int const * numVertsPerFace
static bool assignComponentTopology(TopologyRefiner &newRefiner, MESH const &mesh)
Specify the relationships between vertices, faces, etc. ie the face-vertices, vertex-faces, edge-vertices, etc.
Descriptor for raw topology data, provided as a convenience with a corresponding Factory. It should be functionally complete and simple to use, but for more demanding situations, writing a custom Factory is likely warranted.
Index const * holeIndices
static bool assignComponentTags(TopologyRefiner &newRefiner, MESH const &mesh)
(Optional) Specify edge or vertex sharpness or face holes
Index const * valueIndices
float const * cornerWeights
FVarChannel const * fvarChannels
Index const * cornerVertexIndices
Index const * creaseVertexIndexPairs
static bool resizeComponentTopology(TopologyRefiner &newRefiner, MESH const &mesh)
Specify the number of vertices, faces, face-vertices, etc.
Index const * vertIndicesPerFace
Stores topology data for a specified set of refinement options.
static bool assignFaceVaryingTopology(TopologyRefiner &newRefiner, MESH const &mesh)
(Optional) Specify face-varying data per face