18#ifndef PXR_USD_IMAGING_USD_IMAGING_MATERIAL_BINDING_SCHEMA_H
19#define PXR_USD_IMAGING_USD_IMAGING_MATERIAL_BINDING_SCHEMA_H
23#include "pxr/usdImaging/usdImaging/api.h"
26#include "pxr/imaging/hd/schema.h"
29#include "pxr/imaging/hd/vectorSchema.h"
32PXR_NAMESPACE_OPEN_SCOPE
39#define USD_IMAGING_MATERIAL_BINDING_SCHEMA_TOKENS \
40 (usdMaterialBinding) \
41 (directMaterialBinding) \
42 (collectionMaterialBindings) \
45 USD_IMAGING_MATERIAL_BINDING_SCHEMA_TOKENS);
72 const HdContainerDataSourceHandle &fromParentContainer);
83 UsdImagingDirectMaterialBindingSchema GetDirectMaterialBinding()
const;
116 static HdContainerDataSourceHandle
118 const HdContainerDataSourceHandle &directMaterialBinding,
119 const HdVectorDataSourceHandle &collectionMaterialBindings
132 Builder &SetDirectMaterialBinding(
133 const HdContainerDataSourceHandle &directMaterialBinding);
135 Builder &SetCollectionMaterialBindings(
136 const HdVectorDataSourceHandle &collectionMaterialBindings);
140 HdContainerDataSourceHandle
Build();
143 HdContainerDataSourceHandle _directMaterialBinding;
144 HdVectorDataSourceHandle _collectionMaterialBindings;
151PXR_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...
Template class wrapping a vector data source whose children are container data source conforming to a...
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.
The UsdImagingMaterialBindingSchema specifies a container for a prim's material bindings for a partic...
static USDIMAGING_API HdContainerDataSourceHandle BuildRetained(const HdContainerDataSourceHandle &directMaterialBinding, const HdVectorDataSourceHandle &collectionMaterialBindings)
static USDIMAGING_API const HdDataSourceLocator & GetDefaultLocator()
Returns an HdDataSourceLocator (relative to the prim-level data source) where the container represent...
static USDIMAGING_API const TfToken & GetSchemaToken()
Returns a token where the container representing this schema is found in a container by default.
static USDIMAGING_API UsdImagingMaterialBindingSchema GetFromParent(const HdContainerDataSourceHandle &fromParentContainer)
Retrieves a container data source with the schema's default name token "usdMaterialBinding" from the ...
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.