18#ifndef PXR_USD_IMAGING_USD_IMAGING_USD_PRIM_INFO_SCHEMA_H
19#define PXR_USD_IMAGING_USD_IMAGING_USD_PRIM_INFO_SCHEMA_H
23#include "pxr/usdImaging/usdImaging/api.h"
24#include "pxr/imaging/hd/schemaTypeDefs.h"
26#include "pxr/imaging/hd/schema.h"
31PXR_NAMESPACE_OPEN_SCOPE
38#define USD_IMAGING_USD_PRIM_INFO_SCHEMA_TOKENS \
48 (piPropagatedPrototypes) \
54 USD_IMAGING_USD_PRIM_INFO_SCHEMA_TOKENS);
61class UsdImagingUsdPrimInfoSchema :
public HdSchema
67 UsdImagingUsdPrimInfoSchema(HdContainerDataSourceHandle container)
76 static UsdImagingUsdPrimInfoSchema GetFromParent(
77 const HdContainerDataSourceHandle &fromParentContainer);
88 HdTokenDataSourceHandle GetSpecifier()
const;
91 HdTokenDataSourceHandle GetTypeName()
const;
94 HdBoolDataSourceHandle GetIsLoaded()
const;
97 HdTokenArrayDataSourceHandle GetApiSchemas()
const;
100 HdTokenDataSourceHandle GetKind()
const;
106 HdPathDataSourceHandle GetNiPrototypePath()
const;
109 HdBoolDataSourceHandle GetIsNiPrototype()
const;
112 HdContainerDataSourceHandle GetPiPropagatedPrototypes()
const;
122 static const TfToken &GetSchemaToken();
156 static HdContainerDataSourceHandle
158 const HdTokenDataSourceHandle &specifier,
159 const HdTokenDataSourceHandle &typeName,
160 const HdBoolDataSourceHandle &isLoaded,
161 const HdTokenArrayDataSourceHandle &apiSchemas,
162 const HdTokenDataSourceHandle &kind,
163 const HdContainerDataSourceHandle &variantSelections,
164 const HdPathDataSourceHandle &niPrototypePath,
165 const HdBoolDataSourceHandle &isNiPrototype,
166 const HdContainerDataSourceHandle &piPropagatedPrototypes
180 const HdTokenDataSourceHandle &specifier);
183 const HdTokenDataSourceHandle &typeName);
186 const HdBoolDataSourceHandle &isLoaded);
189 const HdTokenArrayDataSourceHandle &apiSchemas);
192 const HdTokenDataSourceHandle &kind);
195 const HdContainerDataSourceHandle &variantSelections);
198 const HdPathDataSourceHandle &niPrototypePath);
201 const HdBoolDataSourceHandle &isNiPrototype);
203 Builder &SetPiPropagatedPrototypes(
204 const HdContainerDataSourceHandle &piPropagatedPrototypes);
208 HdContainerDataSourceHandle
Build();
211 HdTokenDataSourceHandle _specifier;
212 HdTokenDataSourceHandle _typeName;
213 HdBoolDataSourceHandle _isLoaded;
214 HdTokenArrayDataSourceHandle _apiSchemas;
215 HdTokenDataSourceHandle _kind;
216 HdContainerDataSourceHandle _variantSelections;
217 HdPathDataSourceHandle _niPrototypePath;
218 HdBoolDataSourceHandle _isNiPrototype;
219 HdContainerDataSourceHandle _piPropagatedPrototypes;
231 static HdTokenDataSourceHandle BuildSpecifierDataSource(
237PXR_NAMESPACE_CLOSE_SCOPE
Helper class for storing intermediate results when building a variable expression.
Template class for a schema backed by a container whose children have arbitrary names but an expected...
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.
USDIMAGING_API HdContainerDataSourceHandle Build()
Returns a container data source containing the members set thus far.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.