18#ifndef PXR_IMAGING_HD_MATERIAL_SCHEMA_H
19#define PXR_IMAGING_HD_MATERIAL_SCHEMA_H
23#include "pxr/imaging/hd/api.h"
26#include "pxr/imaging/hd/schema.h"
31PXR_NAMESPACE_OPEN_SCOPE
36#define HD_MATERIAL_SCHEMA_TOKENS \
38 ((universalRenderContext, "")) \
46 HD_MATERIAL_SCHEMA_TOKENS);
62class HdMaterialSchema :
public HdSchema
68 HdMaterialSchema(HdContainerDataSourceHandle container)
77 static HdMaterialSchema GetFromParent(
78 const HdContainerDataSourceHandle &fromParentContainer);
150 HdMaterialNetworkSchema GetMaterialNetwork();
153 HdMaterialNetworkSchema GetMaterialNetwork(
TfToken const &context);
156 HdMaterialNetworkSchema GetMaterialNetwork(
TfTokenVector const &contexts);
189 static const TfToken &GetSchemaToken();
201 static HdContainerDataSourceHandle
205 const HdDataSourceBaseHandle *values);
210PXR_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.
#define TF_DECLARE_PUBLIC_TOKENS(...)
Macro to define public tokens.
std::vector< TfToken > TfTokenVector
Convenience types.