DNA Calib 1.1
Project brief
DefinitionReader.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
18 std::uint16_t meshIndex;
20};
21
29 protected:
31
32 public:
33 virtual std::uint16_t getGUIControlCount() const = 0;
42 virtual StringView getGUIControlName(std::uint16_t index) const = 0;
43
44 virtual std::uint16_t getRawControlCount() const = 0;
53 virtual StringView getRawControlName(std::uint16_t index) const = 0;
54
55 virtual std::uint16_t getJointCount() const = 0;
64 virtual StringView getJointName(std::uint16_t index) const = 0;
70 virtual std::uint16_t getJointIndexListCount() const = 0;
81 virtual ConstArrayView<std::uint16_t> getJointIndicesForLOD(std::uint16_t lod) const = 0;
105 virtual std::uint16_t getJointParentIndex(std::uint16_t index) const = 0;
106
107 virtual std::uint16_t getBlendShapeChannelCount() const = 0;
116 virtual StringView getBlendShapeChannelName(std::uint16_t index) const = 0;
122 virtual std::uint16_t getBlendShapeChannelIndexListCount() const = 0;
136
137 virtual std::uint16_t getAnimatedMapCount() const = 0;
146 virtual StringView getAnimatedMapName(std::uint16_t index) const = 0;
152 virtual std::uint16_t getAnimatedMapIndexListCount() const = 0;
163 virtual ConstArrayView<std::uint16_t> getAnimatedMapIndicesForLOD(std::uint16_t lod) const = 0;
164
165 virtual std::uint16_t getMeshCount() const = 0;
174 virtual StringView getMeshName(std::uint16_t index) const = 0;
180 virtual std::uint16_t getMeshIndexListCount() const = 0;
191 virtual ConstArrayView<std::uint16_t> getMeshIndicesForLOD(std::uint16_t lod) const = 0;
195 virtual std::uint16_t getMeshBlendShapeChannelMappingCount() const = 0;
203 virtual MeshBlendShapeChannelMapping getMeshBlendShapeChannelMapping(std::uint16_t index) const = 0;
225 virtual Vector3 getNeutralJointTranslation(std::uint16_t index) const = 0;
257 virtual Vector3 getNeutralJointRotation(std::uint16_t index) const = 0;
282};
283
284} // namespace dna
Read-only accessors for DNA attributes that represent the rig's static data.
Definition: DefinitionReader.h:28
virtual ConstArrayView< std::uint16_t > getBlendShapeChannelIndicesForLOD(std::uint16_t lod) const =0
List of blend shape channel indices for the specified LOD.
virtual StringView getAnimatedMapName(std::uint16_t index) const =0
Name of the requested animated map.
virtual ConstArrayView< std::uint16_t > getJointIndicesForLOD(std::uint16_t lod) const =0
List of joint indices for the specified LOD.
virtual std::uint16_t getRawControlCount() const =0
virtual StringView getMeshName(std::uint16_t index) const =0
Name of the requested mesh.
virtual ConstArrayView< std::uint16_t > getMeshBlendShapeChannelMappingIndicesForLOD(std::uint16_t lod) const =0
List of mesh-blend shape channel mapping indices for the specified LOD.
virtual Vector3 getNeutralJointRotation(std::uint16_t index) const =0
virtual MeshBlendShapeChannelMapping getMeshBlendShapeChannelMapping(std::uint16_t index) const =0
virtual ConstArrayView< float > getNeutralJointRotationYs() const =0
List of all rotation Y values.
virtual StringView getRawControlName(std::uint16_t index) const =0
Name of the requested raw control.
virtual std::uint16_t getMeshIndexListCount() const =0
Number of mesh index lists.
virtual ConstArrayView< std::uint16_t > getMeshIndicesForLOD(std::uint16_t lod) const =0
List of mesh indices for the specified LOD.
virtual ConstArrayView< float > getNeutralJointTranslationXs() const =0
List of all translation X values.
virtual std::uint16_t getGUIControlCount() const =0
virtual std::uint16_t getMeshCount() const =0
virtual std::uint16_t getAnimatedMapCount() const =0
virtual ~DefinitionReader()
virtual std::uint16_t getJointParentIndex(std::uint16_t index) const =0
Index of the requested joint's parent.
virtual StringView getBlendShapeChannelName(std::uint16_t index) const =0
Name of the requested blend shape channel.
virtual std::uint16_t getAnimatedMapIndexListCount() const =0
Number of animated map index lists.
virtual std::uint16_t getBlendShapeChannelIndexListCount() const =0
Number of blend shape channel index lists.
virtual std::uint16_t getMeshBlendShapeChannelMappingCount() const =0
Number of mesh-blend shape channel mapping items.
virtual ConstArrayView< float > getNeutralJointTranslationZs() const =0
List of all translation Z values.
virtual ConstArrayView< float > getNeutralJointRotationXs() const =0
List of all rotation X values.
virtual std::uint16_t getBlendShapeChannelCount() const =0
virtual ConstArrayView< float > getNeutralJointTranslationYs() const =0
List of all translation Y values.
virtual Vector3 getNeutralJointTranslation(std::uint16_t index) const =0
virtual std::uint16_t getJointCount() const =0
virtual StringView getGUIControlName(std::uint16_t index) const =0
Name of the requested GUI control.
virtual ConstArrayView< float > getNeutralJointRotationZs() const =0
List of all rotation Z values.
virtual std::uint16_t getJointIndexListCount() const =0
Number of joint index lists.
virtual ConstArrayView< std::uint16_t > getAnimatedMapIndicesForLOD(std::uint16_t lod) const =0
List of animated map indices for the specified LOD.
virtual StringView getJointName(std::uint16_t index) const =0
Name of the requested joint.
Read-only accessors for various metadata about the character and the rig.
Definition: DescriptorReader.h:19
Definition: StringView.h:9
A view over a continuous sequence of objects.
Definition: ArrayView.h:55
#define DNAAPI
Definition: dna/Defs.h:26
Definition: BinaryStreamReader.h:10
Mapping that associates a blend shape channel to it's mesh.
Definition: DefinitionReader.h:17
std::uint16_t blendShapeChannelIndex
Definition: DefinitionReader.h:19
std::uint16_t meshIndex
Definition: DefinitionReader.h:18
Definition: Vector3.h:7