DNA Calib 1.1
Project brief
DefinitionWriter.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "dna/Defs.h"
7#include "dna/types/Aliases.h"
8#include "dna/types/Vector3.h"
9
10#include <cstdint>
11
12namespace dna {
13
21 protected:
23
24 public:
28 virtual void clearGUIControlNames() = 0;
41 virtual void setGUIControlName(std::uint16_t index, const char* name) = 0;
45 virtual void clearRawControlNames() = 0;
58 virtual void setRawControlName(std::uint16_t index, const char* name) = 0;
62 virtual void clearJointNames() = 0;
75 virtual void setJointName(std::uint16_t index, const char* name) = 0;
79 virtual void clearJointIndices() = 0;
98 virtual void setJointIndices(std::uint16_t index, const std::uint16_t* jointIndices, std::uint16_t count) = 0;
102 virtual void clearLODJointMappings() = 0;
111 virtual void setLODJointMapping(std::uint16_t lod, std::uint16_t index) = 0;
115 virtual void clearBlendShapeChannelNames() = 0;
128 virtual void setBlendShapeChannelName(std::uint16_t index, const char* name) = 0;
151 virtual void setBlendShapeChannelIndices(std::uint16_t index,
152 const std::uint16_t* blendShapeChannelIndices,
153 std::uint16_t count) = 0;
168 virtual void setLODBlendShapeChannelMapping(std::uint16_t lod, std::uint16_t index) = 0;
172 virtual void clearAnimatedMapNames() = 0;
185 virtual void setAnimatedMapName(std::uint16_t index, const char* name) = 0;
189 virtual void clearAnimatedMapIndices() = 0;
208 virtual void setAnimatedMapIndices(std::uint16_t index, const std::uint16_t* animatedMapIndices, std::uint16_t count) = 0;
212 virtual void clearLODAnimatedMapMappings() = 0;
221 virtual void setLODAnimatedMapMapping(std::uint16_t lod, std::uint16_t index) = 0;
225 virtual void clearMeshNames() = 0;
238 virtual void setMeshName(std::uint16_t index, const char* name) = 0;
242 virtual void clearMeshIndices() = 0;
261 virtual void setMeshIndices(std::uint16_t index, const std::uint16_t* meshIndices, std::uint16_t count) = 0;
265 virtual void clearLODMeshMappings() = 0;
274 virtual void setLODMeshMapping(std::uint16_t lod, std::uint16_t index) = 0;
288 virtual void setMeshBlendShapeChannelMapping(std::uint32_t index, std::uint16_t meshIndex, std::uint16_t blendShapeChannelIndex) = 0;
311 virtual void setJointHierarchy(const std::uint16_t* jointIndices, std::uint16_t count) = 0;
318 virtual void setNeutralJointTranslations(const Vector3* translations, std::uint16_t count) = 0;
325 virtual void setNeutralJointRotations(const Vector3* rotations, std::uint16_t count) = 0;
326};
327
328} // namespace dna
Write-only accessors for DNA attributes that represent the rig's static data.
Definition: DefinitionWriter.h:20
virtual void clearMeshBlendShapeChannelMappings()=0
Delete all stored mesh to blend shape channel mapping entries.
virtual void clearMeshNames()=0
Delete all stored mesh names.
virtual void setBlendShapeChannelName(std::uint16_t index, const char *name)=0
Name of the specified blend shape channel.
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.
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.
virtual void clearLODBlendShapeChannelMappings()=0
Delete all stored LOD to blend shape channel list index mapping entries.
virtual void setMeshName(std::uint16_t index, const char *name)=0
Name of the specified mesh.
virtual void setNeutralJointRotations(const Vector3 *rotations, std::uint16_t count)=0
virtual void clearLODMeshMappings()=0
Delete all stored LOD to mesh list index mapping entries.
virtual void clearGUIControlNames()=0
Delete all stored GUI control names.
virtual void setRawControlName(std::uint16_t index, const char *name)=0
Name of the specified raw control.
virtual void clearJointNames()=0
Delete all stored joint names.
virtual void setJointHierarchy(const std::uint16_t *jointIndices, std::uint16_t count)=0
A simple array describing the parent-child relationships between joints.
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.
virtual void setLODMeshMapping(std::uint16_t lod, std::uint16_t index)=0
Set which meshes belong to which level of detail.
virtual void clearBlendShapeChannelIndices()=0
Delete all stored blend shape channel indices.
virtual void clearAnimatedMapIndices()=0
Delete all stored animated map indices.
virtual void setAnimatedMapName(std::uint16_t index, const char *name)=0
Name of the specified animated map.
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.
virtual void clearMeshIndices()=0
Delete all stored mesh indices.
virtual void clearBlendShapeChannelNames()=0
Delete all stored blend shape channel names.
virtual void setJointName(std::uint16_t index, const char *name)=0
Name of the specified joint.
virtual void setLODJointMapping(std::uint16_t lod, std::uint16_t index)=0
Set which joints belong to which level of detail.
virtual void clearRawControlNames()=0
Delete all stored raw control names.
virtual void setLODAnimatedMapMapping(std::uint16_t lod, std::uint16_t index)=0
Set which animated maps belong to which level of detail.
virtual void setGUIControlName(std::uint16_t index, const char *name)=0
Name of the specified GUI control.
virtual ~DefinitionWriter()
virtual void clearLODJointMappings()=0
Delete all stored LOD to joint list index mapping entries.
virtual void clearLODAnimatedMapMappings()=0
Delete all stored LOD to animated map list index mapping entries.
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.
virtual void setLODBlendShapeChannelMapping(std::uint16_t lod, std::uint16_t index)=0
Set which blend shape channels belong to which level of detail.
virtual void clearJointIndices()=0
Delete all stored joint indices.
virtual void setNeutralJointTranslations(const Vector3 *translations, std::uint16_t count)=0
virtual void clearAnimatedMapNames()=0
Delete all stored animated map names.
Write-only accessors to various metadata about the character and the rig.
Definition: DescriptorWriter.h:19
#define DNAAPI
Definition: dna/Defs.h:26
Definition: BinaryStreamReader.h:10
Definition: Vector3.h:7