18#ifndef PXR_USD_IMAGING_USD_IMAGING_USD_RENDER_VAR_SCHEMA_H
19#define PXR_USD_IMAGING_USD_IMAGING_USD_RENDER_VAR_SCHEMA_H
23#include "pxr/usdImaging/usdImaging/api.h"
25#include "pxr/imaging/hd/schema.h"
30PXR_NAMESPACE_OPEN_SCOPE
35#define USD_IMAGING_USD_RENDER_VAR_SCHEMA_TOKENS \
40 (namespacedSettings) \
43 USD_IMAGING_USD_RENDER_VAR_SCHEMA_TOKENS);
48class UsdImagingUsdRenderVarSchema :
public HdSchema
54 UsdImagingUsdRenderVarSchema(HdContainerDataSourceHandle container)
63 static UsdImagingUsdRenderVarSchema GetFromParent(
64 const HdContainerDataSourceHandle &fromParentContainer);
75 HdTokenDataSourceHandle GetDataType()
const;
78 HdStringDataSourceHandle GetSourceName()
const;
81 HdTokenDataSourceHandle GetSourceType()
const;
84 HdContainerDataSourceHandle GetNamespacedSettings()
const;
94 static const TfToken &GetSchemaToken();
128 static HdContainerDataSourceHandle
130 const HdTokenDataSourceHandle &dataType,
131 const HdStringDataSourceHandle &sourceName,
132 const HdTokenDataSourceHandle &sourceType,
133 const HdContainerDataSourceHandle &namespacedSettings
147 const HdTokenDataSourceHandle &dataType);
150 const HdStringDataSourceHandle &sourceName);
153 const HdTokenDataSourceHandle &sourceType);
155 Builder &SetNamespacedSettings(
156 const HdContainerDataSourceHandle &namespacedSettings);
160 HdContainerDataSourceHandle
Build();
163 HdTokenDataSourceHandle _dataType;
164 HdStringDataSourceHandle _sourceName;
165 HdTokenDataSourceHandle _sourceType;
166 HdContainerDataSourceHandle _namespacedSettings;
173PXR_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...
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.