38 #ifndef IE_CORE_SMOOTHSKINNINGDATA_H
39 #define IE_CORE_SMOOTHSKINNINGDATA_H
41 #include "IECore/Export.h"
42 #include "IECore/Data.h"
43 #include "IECore/VectorTypedData.h"
48 IE_CORE_FORWARDDECLARE( SmoothSkinningData )
50 class IECORE_API SmoothSkinningData : public Data
93 IE_CORE_DECLAREOBJECT( SmoothSkinningData, Data );
96 const StringVectorData *influenceNames()
const;
97 StringVectorData *influenceNames() ;
101 const M44fVectorData *influencePose()
const;
102 M44fVectorData *influencePose() ;
107 const IntVectorData *pointIndexOffsets()
const;
108 IntVectorData *pointIndexOffsets() ;
114 const IntVectorData *pointInfluenceCounts()
const;
115 IntVectorData *pointInfluenceCounts() ;
120 const IntVectorData *pointInfluenceIndices()
const;
121 IntVectorData *pointInfluenceIndices() ;
125 const FloatVectorData *pointInfluenceWeights()
const;
126 FloatVectorData *pointInfluenceWeights() ;
129 SmoothSkinningData( ConstStringVectorDataPtr influenceNames,
130 ConstM44fVectorDataPtr influencePose,
131 ConstIntVectorDataPtr pointIndexOffsets,
132 ConstIntVectorDataPtr pointInfluenceCounts,
133 ConstIntVectorDataPtr pointInfluenceIndices,
134 ConstFloatVectorDataPtr pointInfluenceWeights);
137 SmoothSkinningData();
139 ~SmoothSkinningData()
override;
142 void validate()
const;
146 static const unsigned int m_ioVersion;
148 StringVectorDataPtr m_influenceNames;
149 M44fVectorDataPtr m_influencePose;
150 IntVectorDataPtr m_pointIndexOffsets;
151 IntVectorDataPtr m_pointInfluenceCounts;
152 IntVectorDataPtr m_pointInfluenceIndices;
153 FloatVectorDataPtr m_pointInfluenceWeights;
155 void validateSizes()
const;
156 void validateCounts()
const;
157 void validateIds()
const;
158 void validateOffsets()
const;
161 IE_CORE_DECLAREPTR( SmoothSkinningData )
165 #endif // IE_CORE_SMOOTHSKINNINGDATA_H
This namespace contains all components of the core library.
Definition: AddSmoothSkinningInfluencesOp.h:43