skeletonSchema.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_SKELETON_SCHEMA_H
19 #define PXR_USD_IMAGING_USD_SKEL_IMAGING_SKELETON_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 
30 PXR_NAMESPACE_OPEN_SCOPE
31 
32 // --(BEGIN CUSTOM CODE: Declares)--
33 // --(END CUSTOM CODE: Declares)--
34 
35 #define USD_SKEL_IMAGING_SKELETON_SCHEMA_TOKENS \
36  (skeleton) \
37  (joints) \
38  (jointNames) \
39  (bindTransforms) \
40  (restTransforms) \
41 
42 TF_DECLARE_PUBLIC_TOKENS(UsdSkelImagingSkeletonSchemaTokens, USDSKELIMAGING_API,
43  USD_SKEL_IMAGING_SKELETON_SCHEMA_TOKENS);
44 
45 //-----------------------------------------------------------------------------
46 
47 
53 {
54 public:
57 
58  UsdSkelImagingSkeletonSchema(HdContainerDataSourceHandle container)
59  : HdSchema(container) {}
60 
66  USDSKELIMAGING_API
68  const HdContainerDataSourceHandle &fromParentContainer);
69 
71 
72 // --(BEGIN CUSTOM CODE: Schema Methods)--
73 // --(END CUSTOM CODE: Schema Methods)--
74 
77 
79  USDSKELIMAGING_API
80  HdTokenArrayDataSourceHandle GetJoints() const;
81 
84  USDSKELIMAGING_API
85  HdTokenArrayDataSourceHandle GetJointNames() const;
86 
87  USDSKELIMAGING_API
88  HdMatrixArrayDataSourceHandle GetBindTransforms() const;
89 
91  USDSKELIMAGING_API
92  HdMatrixArrayDataSourceHandle GetRestTransforms() const;
93 
95 
98 
101  USDSKELIMAGING_API
102  static const TfToken &GetSchemaToken();
103 
106  USDSKELIMAGING_API
107  static const HdDataSourceLocator &GetDefaultLocator();
108 
110 
119 
121  USDSKELIMAGING_API
122  static const HdDataSourceLocator &GetJointsLocator();
123 
125  USDSKELIMAGING_API
127 
129  USDSKELIMAGING_API
131 
133  USDSKELIMAGING_API
136 
139 
147  USDSKELIMAGING_API
148  static HdContainerDataSourceHandle
150  const HdTokenArrayDataSourceHandle &joints,
151  const HdTokenArrayDataSourceHandle &jointNames,
152  const HdMatrixArrayDataSourceHandle &bindTransforms,
153  const HdMatrixArrayDataSourceHandle &restTransforms
154  );
155 
162  class Builder
163  {
164  public:
165  USDSKELIMAGING_API
166  Builder &SetJoints(
167  const HdTokenArrayDataSourceHandle &joints);
168  USDSKELIMAGING_API
169  Builder &SetJointNames(
170  const HdTokenArrayDataSourceHandle &jointNames);
171  USDSKELIMAGING_API
172  Builder &SetBindTransforms(
173  const HdMatrixArrayDataSourceHandle &bindTransforms);
174  USDSKELIMAGING_API
175  Builder &SetRestTransforms(
176  const HdMatrixArrayDataSourceHandle &restTransforms);
177 
179  USDSKELIMAGING_API
180  HdContainerDataSourceHandle Build();
181 
182  private:
183  HdTokenArrayDataSourceHandle _joints;
184  HdTokenArrayDataSourceHandle _jointNames;
185  HdMatrixArrayDataSourceHandle _bindTransforms;
186  HdMatrixArrayDataSourceHandle _restTransforms;
187 
188  };
189 
191 };
192 
193 PXR_NAMESPACE_CLOSE_SCOPE
194 
195 #endif
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 & GetBindTransformsLocator()
Prim-level relative data source locator to locate bindTransforms.
USDSKELIMAGING_API HdContainerDataSourceHandle Build()
Returns a container data source containing the members set thus far.
USDSKELIMAGING_API HdMatrixArrayDataSourceHandle GetRestTransforms() const
These are local rest transforms.
Corresponds to UsdSkelSkeleton.
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:80
static USDSKELIMAGING_API const HdDataSourceLocator & GetDefaultLocator()
Returns an HdDataSourceLocator (relative to the prim-level data source) where the container represent...
Represents an object that can identify the location of a data source.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
Definition: staticTokens.h:92
USDSKELIMAGING_API HdTokenArrayDataSourceHandle GetJointNames() const
Here for completeness but ignored for posing the geometry.
static USDSKELIMAGING_API const HdDataSourceLocator & GetRestTransformsLocator()
Prim-level relative data source locator to locate restTransforms.
static USDSKELIMAGING_API HdContainerDataSourceHandle BuildRetained(const HdTokenArrayDataSourceHandle &joints, const HdTokenArrayDataSourceHandle &jointNames, const HdMatrixArrayDataSourceHandle &bindTransforms, const HdMatrixArrayDataSourceHandle &restTransforms)
Utility class for setting sparse sets of child data source fields to be filled as arguments into Buil...
Schema classes represent a structured view of the inherently unstructured container data source passe...
Definition: schema.h:25
static USDSKELIMAGING_API UsdSkelImagingSkeletonSchema GetFromParent(const HdContainerDataSourceHandle &fromParentContainer)
Retrieves a container data source with the schema's default name token "skeleton" from the parent con...
static USDSKELIMAGING_API const HdDataSourceLocator & GetJointNamesLocator()
Prim-level relative data source locator to locate jointNames.
USDSKELIMAGING_API HdTokenArrayDataSourceHandle GetJoints() const
Determines topology of skeleton.
static USDSKELIMAGING_API const HdDataSourceLocator & GetJointsLocator()
Prim-level relative data source locator to locate joints.