Loading...
Searching...
No Matches
bindingSchema.h
Go to the documentation of this file.
1//
2// Copyright 2025 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
8
9/* ************************************************************************** */
10/* ** ** */
11/* ** This file is generated by a script. ** */
12/* ** ** */
13/* ** Do not edit it directly (unless it is within a CUSTOM CODE section)! ** */
14/* ** Edit hdSchemaDefs.py instead to make changes. ** */
15/* ** ** */
16/* ************************************************************************** */
17
18#ifndef PXR_USD_IMAGING_USD_SKEL_IMAGING_BINDING_SCHEMA_H
19#define PXR_USD_IMAGING_USD_SKEL_IMAGING_BINDING_SCHEMA_H
20
22
23#include "pxr/usdImaging/usdSkelImaging/api.h"
24
25#include "pxr/imaging/hd/schema.h"
26
27// --(BEGIN CUSTOM CODE: Includes)--
28// --(END CUSTOM CODE: Includes)--
29
30PXR_NAMESPACE_OPEN_SCOPE
31
32// --(BEGIN CUSTOM CODE: Declares)--
33// --(END CUSTOM CODE: Declares)--
34
35#define USD_SKEL_IMAGING_BINDING_SCHEMA_TOKENS \
36 (skelBinding) \
37 (animationSource) \
38 (skeleton) \
39 (joints) \
40 (blendShapes) \
41 (blendShapeTargets) \
42 (hasSkelRoot) \
43 ((skinningMethodPrimvar, "skel:skinningMethod")) \
44 ((geomBindTransformPrimvar, "skel:geomBindTransform")) \
45 ((jointIndicesPrimvar, "skel:jointIndices")) \
46 ((jointWeightsPrimvar, "skel:jointWeights")) \
47
48TF_DECLARE_PUBLIC_TOKENS(UsdSkelImagingBindingSchemaTokens, USDSKELIMAGING_API,
49 USD_SKEL_IMAGING_BINDING_SCHEMA_TOKENS);
50
51//-----------------------------------------------------------------------------
52
53
59{
60public:
63
64 UsdSkelImagingBindingSchema(HdContainerDataSourceHandle container)
65 : HdSchema(container) {}
66
72 USDSKELIMAGING_API
74 const HdContainerDataSourceHandle &fromParentContainer);
75
77
78// --(BEGIN CUSTOM CODE: Schema Methods)--
79// --(END CUSTOM CODE: Schema Methods)--
80
83
89 USDSKELIMAGING_API
90 HdPathDataSourceHandle GetAnimationSource() const;
91
92 USDSKELIMAGING_API
93 HdPathDataSourceHandle GetSkeleton() const;
94
95 USDSKELIMAGING_API
96 HdTokenArrayDataSourceHandle GetJoints() const;
97
99 USDSKELIMAGING_API
100 HdTokenArrayDataSourceHandle GetBlendShapes() const;
101
103 USDSKELIMAGING_API
104 HdPathArrayDataSourceHandle GetBlendShapeTargets() const;
105
109 USDSKELIMAGING_API
110 HdBoolDataSourceHandle GetHasSkelRoot() const;
111
113
116
119 USDSKELIMAGING_API
120 static const TfToken &GetSchemaToken();
121
124 USDSKELIMAGING_API
126
128
137
139 USDSKELIMAGING_API
141
143 USDSKELIMAGING_API
145
147 USDSKELIMAGING_API
149
151 USDSKELIMAGING_API
153
155 USDSKELIMAGING_API
157
159 USDSKELIMAGING_API
162
165
173 USDSKELIMAGING_API
174 static HdContainerDataSourceHandle
176 const HdPathDataSourceHandle &animationSource,
177 const HdPathDataSourceHandle &skeleton,
178 const HdTokenArrayDataSourceHandle &joints,
179 const HdTokenArrayDataSourceHandle &blendShapes,
180 const HdPathArrayDataSourceHandle &blendShapeTargets,
181 const HdBoolDataSourceHandle &hasSkelRoot
182 );
183
191 {
192 public:
193 USDSKELIMAGING_API
194 Builder &SetAnimationSource(
195 const HdPathDataSourceHandle &animationSource);
196 USDSKELIMAGING_API
197 Builder &SetSkeleton(
198 const HdPathDataSourceHandle &skeleton);
199 USDSKELIMAGING_API
200 Builder &SetJoints(
201 const HdTokenArrayDataSourceHandle &joints);
202 USDSKELIMAGING_API
203 Builder &SetBlendShapes(
204 const HdTokenArrayDataSourceHandle &blendShapes);
205 USDSKELIMAGING_API
206 Builder &SetBlendShapeTargets(
207 const HdPathArrayDataSourceHandle &blendShapeTargets);
208 USDSKELIMAGING_API
209 Builder &SetHasSkelRoot(
210 const HdBoolDataSourceHandle &hasSkelRoot);
211
213 USDSKELIMAGING_API
214 HdContainerDataSourceHandle Build();
215
216 private:
217 HdPathDataSourceHandle _animationSource;
218 HdPathDataSourceHandle _skeleton;
219 HdTokenArrayDataSourceHandle _joints;
220 HdTokenArrayDataSourceHandle _blendShapes;
221 HdPathArrayDataSourceHandle _blendShapeTargets;
222 HdBoolDataSourceHandle _hasSkelRoot;
223
224 };
225
227};
228
229PXR_NAMESPACE_CLOSE_SCOPE
230
231#endif
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...
Definition: schema.h:26
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:71
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.
Corresponds to UsdSkelBindingAPI.
Definition: bindingSchema.h:59
static USDSKELIMAGING_API const HdDataSourceLocator & GetAnimationSourceLocator()
Prim-level relative data source locator to locate animationSource.
static USDSKELIMAGING_API const TfToken & GetSchemaToken()
Returns a token where the container representing this schema is found in a container by default.
static USDSKELIMAGING_API const HdDataSourceLocator & GetSkeletonLocator()
Prim-level relative data source locator to locate skeleton.
static USDSKELIMAGING_API const HdDataSourceLocator & GetBlendShapesLocator()
Prim-level relative data source locator to locate blendShapes.
USDSKELIMAGING_API HdPathArrayDataSourceHandle GetBlendShapeTargets() const
This is not inherited according to the UsdSkel spec.
static USDSKELIMAGING_API const HdDataSourceLocator & GetBlendShapeTargetsLocator()
Prim-level relative data source locator to locate blendShapeTargets.
USDSKELIMAGING_API HdBoolDataSourceHandle GetHasSkelRoot() const
Is this prim a descendant of a SkelRoot? Does not correspond to Usd attribute and is actually populat...
static USDSKELIMAGING_API const HdDataSourceLocator & GetHasSkelRootLocator()
Prim-level relative data source locator to locate hasSkelRoot.
USDSKELIMAGING_API HdTokenArrayDataSourceHandle GetBlendShapes() const
This is not inherited according to the UsdSkel spec.
USDSKELIMAGING_API HdPathDataSourceHandle GetAnimationSource() const
Note that in UsdSkel, the animation comes from the animationSource on the Skeleton (which also carrie...
static USDSKELIMAGING_API HdContainerDataSourceHandle BuildRetained(const HdPathDataSourceHandle &animationSource, const HdPathDataSourceHandle &skeleton, const HdTokenArrayDataSourceHandle &joints, const HdTokenArrayDataSourceHandle &blendShapes, const HdPathArrayDataSourceHandle &blendShapeTargets, const HdBoolDataSourceHandle &hasSkelRoot)
static USDSKELIMAGING_API const HdDataSourceLocator & GetDefaultLocator()
Returns an HdDataSourceLocator (relative to the prim-level data source) where the container represent...
static USDSKELIMAGING_API UsdSkelImagingBindingSchema GetFromParent(const HdContainerDataSourceHandle &fromParentContainer)
Retrieves a container data source with the schema's default name token "skelBinding" from the parent ...
static USDSKELIMAGING_API const HdDataSourceLocator & GetJointsLocator()
Prim-level relative data source locator to locate joints.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Definition: staticTokens.h:92