18#ifndef PXR_USD_IMAGING_USD_SKEL_IMAGING_BINDING_SCHEMA_H
19#define PXR_USD_IMAGING_USD_SKEL_IMAGING_BINDING_SCHEMA_H
23#include "pxr/usdImaging/usdSkelImaging/api.h"
25#include "pxr/imaging/hd/schema.h"
30PXR_NAMESPACE_OPEN_SCOPE
35#define USD_SKEL_IMAGING_BINDING_SCHEMA_TOKENS \
43 ((skinningMethodPrimvar, "skel:skinningMethod")) \
44 ((geomBindTransformPrimvar, "skel:geomBindTransform")) \
45 ((jointIndicesPrimvar, "skel:jointIndices")) \
46 ((jointWeightsPrimvar, "skel:jointWeights")) \
49 USD_SKEL_IMAGING_BINDING_SCHEMA_TOKENS);
56class UsdSkelImagingBindingSchema :
public HdSchema
62 UsdSkelImagingBindingSchema(HdContainerDataSourceHandle container)
71 static UsdSkelImagingBindingSchema GetFromParent(
72 const HdContainerDataSourceHandle &fromParentContainer);
88 HdPathDataSourceHandle GetAnimationSource()
const;
91 HdPathDataSourceHandle GetSkeleton()
const;
94 HdTokenArrayDataSourceHandle GetJoints()
const;
98 HdTokenArrayDataSourceHandle GetBlendShapes()
const;
102 HdPathArrayDataSourceHandle GetBlendShapeTargets()
const;
108 HdBoolDataSourceHandle GetHasSkelRoot()
const;
118 static const TfToken &GetSchemaToken();
172 static HdContainerDataSourceHandle
174 const HdPathDataSourceHandle &animationSource,
175 const HdPathDataSourceHandle &skeleton,
176 const HdTokenArrayDataSourceHandle &joints,
177 const HdTokenArrayDataSourceHandle &blendShapes,
178 const HdPathArrayDataSourceHandle &blendShapeTargets,
179 const HdBoolDataSourceHandle &hasSkelRoot
193 const HdPathDataSourceHandle &animationSource);
196 const HdPathDataSourceHandle &skeleton);
199 const HdTokenArrayDataSourceHandle &joints);
202 const HdTokenArrayDataSourceHandle &blendShapes);
205 const HdPathArrayDataSourceHandle &blendShapeTargets);
208 const HdBoolDataSourceHandle &hasSkelRoot);
212 HdContainerDataSourceHandle
Build();
215 HdPathDataSourceHandle _animationSource;
216 HdPathDataSourceHandle _skeleton;
217 HdTokenArrayDataSourceHandle _joints;
218 HdTokenArrayDataSourceHandle _blendShapes;
219 HdPathArrayDataSourceHandle _blendShapeTargets;
220 HdBoolDataSourceHandle _hasSkelRoot;
227PXR_NAMESPACE_CLOSE_SCOPE
Represents an object that can identify the location of a data source.
Schema classes represent a structured view of the inherently unstructured container data source passe...
Token for efficient comparison, assignment, and hashing of known strings.
Utility class for setting sparse sets of child data source fields to be filled as arguments into Buil...
USDSKELIMAGING_API HdContainerDataSourceHandle Build()
Returns a container data source containing the members set thus far.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.