DNA Calib 1.1
Project brief
Public Member Functions | List of all members
dna::StreamWriter Class Referenceabstract

#include <StreamWriter.h>

Inheritance diagram for dna::StreamWriter:
Inheritance graph
Collaboration diagram for dna::StreamWriter:
Collaboration graph

Public Member Functions

 ~StreamWriter () override
 
virtual void write ()=0
 Write data to stream from internal structures. More...
 
- Public Member Functions inherited from dna::Writer
 ~Writer () override
 
void setFrom (const Reader *source, DataLayer layer=DataLayer::All, MemoryResource *memRes=nullptr)
 Initialize the Writer from the given Reader. More...
 
- Public Member Functions inherited from dna::BehaviorWriter
virtual void setGUIToRawInputIndices (const std::uint16_t *inputIndices, std::uint16_t count)=0
 Input indices used for mapping gui to raw controls. More...
 
virtual void setGUIToRawOutputIndices (const std::uint16_t *outputIndices, std::uint16_t count)=0
 Output indices used for mapping gui to raw controls. More...
 
virtual void setGUIToRawFromValues (const float *fromValues, std::uint16_t count)=0
 Filter values(lower-bounds) used to decide whether a particular entry should be evaluated or not during gui to raw control mapping. More...
 
virtual void setGUIToRawToValues (const float *toValues, std::uint16_t count)=0
 Filter values(upper-bounds) used to decide whether a particular entry should be evaluated or not during gui to raw control mapping. More...
 
virtual void setGUIToRawSlopeValues (const float *slopeValues, std::uint16_t count)=0
 Computational values(slope/gradient) used for calculating the output value during gui to raw control mapping. More...
 
virtual void setGUIToRawCutValues (const float *cutValues, std::uint16_t count)=0
 Computational values(vertical intercept) used for calculating the output value during gui to raw control mapping. More...
 
virtual void setPSDCount (std::uint16_t count)=0
 The number of distinct PSD expressions. More...
 
virtual void setPSDRowIndices (const std::uint16_t *rowIndices, std::uint16_t count)=0
 PSD(input) indices which will become the rows of the PSD matrix. More...
 
virtual void setPSDColumnIndices (const std::uint16_t *columnIndices, std::uint16_t count)=0
 Control(input) indices which will become the columns of the PSD matrix. More...
 
virtual void setPSDValues (const float *weights, std::uint16_t count)=0
 Weights associated with each PSD row and column pair. More...
 
virtual void setJointRowCount (std::uint16_t rowCount)=0
 Number of rows in the entire, uncompressed joint matrix. More...
 
virtual void setJointColumnCount (std::uint16_t columnCount)=0
 Number of columns in the entire, uncompressed joint matrix. More...
 
virtual void clearJointGroups ()=0
 Delete all joint groups. More...
 
virtual void deleteJointGroup (std::uint16_t jointGroupIndex)=0
 Delete the specified joint group. More...
 
virtual void setJointGroupLODs (std::uint16_t jointGroupIndex, const std::uint16_t *lods, std::uint16_t count)=0
 Number of rows per each level of detail for the specified joint group. More...
 
virtual void setJointGroupInputIndices (std::uint16_t jointGroupIndex, const std::uint16_t *inputIndices, std::uint16_t count)=0
 Column indices that the specified joint group contains. More...
 
virtual void setJointGroupOutputIndices (std::uint16_t jointGroupIndex, const std::uint16_t *outputIndices, std::uint16_t count)=0
 Row indices that the specified joint group contains. More...
 
virtual void setJointGroupValues (std::uint16_t jointGroupIndex, const float *values, std::uint32_t count)=0
 Values that the specified joint group contains. More...
 
virtual void setJointGroupJointIndices (std::uint16_t jointGroupIndex, const std::uint16_t *jointIndices, std::uint16_t count)=0
 Joint indices that the specified joint group contains. More...
 
virtual void setBlendShapeChannelLODs (const std::uint16_t *lods, std::uint16_t count)=0
 Input index count per each level of detail for blend shapes. More...
 
virtual void setBlendShapeChannelInputIndices (const std::uint16_t *inputIndices, std::uint16_t count)=0
 Input indices used to index into the input vector. More...
 
virtual void setBlendShapeChannelOutputIndices (const std::uint16_t *outputIndices, std::uint16_t count)=0
 Output indices specify the positions of blend shape output values. More...
 
virtual void setAnimatedMapLODs (const std::uint16_t *lods, std::uint16_t count)=0
 Row count per each level of detail for animated maps. More...
 
virtual void setAnimatedMapInputIndices (const std::uint16_t *inputIndices, std::uint16_t count)=0
 Input indices used to index into the array of input values. More...
 
virtual void setAnimatedMapOutputIndices (const std::uint16_t *outputIndices, std::uint16_t count)=0
 Output indices that specify the computed output value's position. More...
 
virtual void setAnimatedMapFromValues (const float *fromValues, std::uint16_t count)=0
 Filter values(lower-bounds) used to decide whether a particular entry should be evaluated or not. More...
 
virtual void setAnimatedMapToValues (const float *toValues, std::uint16_t count)=0
 Filter values(upper-bounds) used to decide whether a particular entry should be evaluated or not. More...
 
virtual void setAnimatedMapSlopeValues (const float *slopeValues, std::uint16_t count)=0
 Computational values(slope/gradient) used for calculating the output value. More...
 
virtual void setAnimatedMapCutValues (const float *cutValues, std::uint16_t count)=0
 Computational values(vertical intercept) used for calculating the output value. More...
 
- Public Member Functions inherited from dna::DefinitionWriter
virtual void clearGUIControlNames ()=0
 Delete all stored GUI control names. More...
 
virtual void setGUIControlName (std::uint16_t index, const char *name)=0
 Name of the specified GUI control. More...
 
virtual void clearRawControlNames ()=0
 Delete all stored raw control names. More...
 
virtual void setRawControlName (std::uint16_t index, const char *name)=0
 Name of the specified raw control. More...
 
virtual void clearJointNames ()=0
 Delete all stored joint names. More...
 
virtual void setJointName (std::uint16_t index, const char *name)=0
 Name of the specified joint. More...
 
virtual void clearJointIndices ()=0
 Delete all stored joint indices. More...
 
virtual void setJointIndices (std::uint16_t index, const std::uint16_t *jointIndices, std::uint16_t count)=0
 Store a list of joint indices onto a specified index. More...
 
virtual void clearLODJointMappings ()=0
 Delete all stored LOD to joint list index mapping entries. More...
 
virtual void setLODJointMapping (std::uint16_t lod, std::uint16_t index)=0
 Set which joints belong to which level of detail. More...
 
virtual void clearBlendShapeChannelNames ()=0
 Delete all stored blend shape channel names. More...
 
virtual void setBlendShapeChannelName (std::uint16_t index, const char *name)=0
 Name of the specified blend shape channel. More...
 
virtual void clearBlendShapeChannelIndices ()=0
 Delete all stored blend shape channel indices. More...
 
virtual void setBlendShapeChannelIndices (std::uint16_t index, const std::uint16_t *blendShapeChannelIndices, std::uint16_t count)=0
 Store a list of blend shape channel name indices onto a specified index. More...
 
virtual void clearLODBlendShapeChannelMappings ()=0
 Delete all stored LOD to blend shape channel list index mapping entries. More...
 
virtual void setLODBlendShapeChannelMapping (std::uint16_t lod, std::uint16_t index)=0
 Set which blend shape channels belong to which level of detail. More...
 
virtual void clearAnimatedMapNames ()=0
 Delete all stored animated map names. More...
 
virtual void setAnimatedMapName (std::uint16_t index, const char *name)=0
 Name of the specified animated map. More...
 
virtual void clearAnimatedMapIndices ()=0
 Delete all stored animated map indices. More...
 
virtual void setAnimatedMapIndices (std::uint16_t index, const std::uint16_t *animatedMapIndices, std::uint16_t count)=0
 Store a list of animated map name indices onto a specified index. More...
 
virtual void clearLODAnimatedMapMappings ()=0
 Delete all stored LOD to animated map list index mapping entries. More...
 
virtual void setLODAnimatedMapMapping (std::uint16_t lod, std::uint16_t index)=0
 Set which animated maps belong to which level of detail. More...
 
virtual void clearMeshNames ()=0
 Delete all stored mesh names. More...
 
virtual void setMeshName (std::uint16_t index, const char *name)=0
 Name of the specified mesh. More...
 
virtual void clearMeshIndices ()=0
 Delete all stored mesh indices. More...
 
virtual void setMeshIndices (std::uint16_t index, const std::uint16_t *meshIndices, std::uint16_t count)=0
 Store a list of mesh name indices onto a specified index. More...
 
virtual void clearLODMeshMappings ()=0
 Delete all stored LOD to mesh list index mapping entries. More...
 
virtual void setLODMeshMapping (std::uint16_t lod, std::uint16_t index)=0
 Set which meshes belong to which level of detail. More...
 
virtual void clearMeshBlendShapeChannelMappings ()=0
 Delete all stored mesh to blend shape channel mapping entries. More...
 
virtual void setMeshBlendShapeChannelMapping (std::uint32_t index, std::uint16_t meshIndex, std::uint16_t blendShapeChannelIndex)=0
 Associate a blend shape channel with it's mesh. More...
 
virtual void setJointHierarchy (const std::uint16_t *jointIndices, std::uint16_t count)=0
 A simple array describing the parent-child relationships between joints. More...
 
virtual void setNeutralJointTranslations (const Vector3 *translations, std::uint16_t count)=0
 
virtual void setNeutralJointRotations (const Vector3 *rotations, std::uint16_t count)=0
 
- Public Member Functions inherited from dna::DescriptorWriter
virtual void setName (const char *name)=0
 
virtual void setArchetype (Archetype archetype)=0
 
virtual void setGender (Gender gender)=0
 
virtual void setAge (std::uint16_t age)=0
 
virtual void clearMetaData ()=0
 Empties the metadata storage, delete all key-value pairs. More...
 
virtual void setMetaData (const char *key, const char *value)=0
 Associate the metadata value with the given key. More...
 
virtual void setTranslationUnit (TranslationUnit unit)=0
 
virtual void setRotationUnit (RotationUnit unit)=0
 
virtual void setCoordinateSystem (CoordinateSystem system)=0
 
virtual void setLODCount (std::uint16_t lodCount)=0
 Available levels of detail (e.g. 6 which means the following levels are available: [0,1,2,3,4,5], where 0 is the LOD with the highest details, and 5 is the LOD with lowest details). More...
 
virtual void setDBMaxLOD (std::uint16_t lod)=0
 The maximum level of detail stored in the DNA data for this character. More...
 
virtual void setDBComplexity (const char *name)=0
 Name of the input control interface used to drive this character rig. More...
 
virtual void setDBName (const char *name)=0
 Name of the database from which the character originates. More...
 
- Public Member Functions inherited from dna::GeometryWriter
virtual void clearMeshes ()=0
 Delete all meshes. More...
 
virtual void deleteMesh (std::uint16_t meshIndex)=0
 Delete the specified mesh. More...
 
virtual void setVertexPositions (std::uint16_t meshIndex, const Position *positions, std::uint32_t count)=0
 List of vertex positions. More...
 
virtual void setVertexTextureCoordinates (std::uint16_t meshIndex, const TextureCoordinate *textureCoordinates, std::uint32_t count)=0
 List of vertex texture coordinates. More...
 
virtual void setVertexNormals (std::uint16_t meshIndex, const Normal *normals, std::uint32_t count)=0
 List of vertex normals. More...
 
virtual void setVertexLayouts (std::uint16_t meshIndex, const VertexLayout *layouts, std::uint32_t count)=0
 List of vertex layouts the belong to the specified mesh. More...
 
virtual void clearFaceVertexLayoutIndices (std::uint16_t meshIndex)=0
 Delete all lists of vertex layout indices for the specified mesh. More...
 
virtual void setFaceVertexLayoutIndices (std::uint16_t meshIndex, std::uint32_t faceIndex, const std::uint32_t *layoutIndices, std::uint32_t count)=0
 Vertex layout indices that belong to the specified face. More...
 
virtual void setMaximumInfluencePerVertex (std::uint16_t meshIndex, std::uint16_t maxInfluenceCount)=0
 
virtual void clearSkinWeights (std::uint16_t meshIndex)=0
 Delete all skin weights for the specified mesh. More...
 
virtual void setSkinWeightsValues (std::uint16_t meshIndex, std::uint32_t vertexIndex, const float *weights, std::uint16_t count)=0
 List of skin weights influencing the referenced vertex. More...
 
virtual void setSkinWeightsJointIndices (std::uint16_t meshIndex, std::uint32_t vertexIndex, const std::uint16_t *jointIndices, std::uint16_t count)=0
 List of joint indices associated with each skin weight for the specified vertex. More...
 
virtual void clearBlendShapeTargets (std::uint16_t meshIndex)=0
 Delete all blend shape targets for the specified mesh. More...
 
virtual void setBlendShapeChannelIndex (std::uint16_t meshIndex, std::uint16_t blendShapeTargetIndex, std::uint16_t blendShapeChannelIndex)=0
 The matching blend shape channel index of the specified blend shape target. More...
 
virtual void setBlendShapeTargetDeltas (std::uint16_t meshIndex, std::uint16_t blendShapeTargetIndex, const Delta *deltas, std::uint32_t count)=0
 List of deltas for each affected vertex. More...
 
virtual void setBlendShapeTargetVertexIndices (std::uint16_t meshIndex, std::uint16_t blendShapeTargetIndex, const std::uint32_t *vertexIndices, std::uint32_t count)=0
 Vertex position indices affected by the specified blend shape target. More...
 

Additional Inherited Members

- Protected Member Functions inherited from dna::BehaviorWriter
virtual ~BehaviorWriter ()
 
- Protected Member Functions inherited from dna::DefinitionWriter
virtual ~DefinitionWriter ()
 
- Protected Member Functions inherited from dna::DescriptorWriter
virtual ~DescriptorWriter ()
 
- Protected Member Functions inherited from dna::GeometryWriter
virtual ~GeometryWriter ()
 

Constructor & Destructor Documentation

◆ ~StreamWriter()

dna::StreamWriter::~StreamWriter ( )
overridedefault

Member Function Documentation

◆ write()

virtual void dna::StreamWriter::write ( )
pure virtual

Write data to stream from internal structures.

Implemented in dna::BinaryStreamWriterImpl, and dna::JSONStreamWriterImpl.


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