HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdSchema Class Reference

#include <schema.h>

Inherited by HdarSystemSchema, HdBasisCurvesSchema, HdBasisCurvesTopologySchema, HdCameraSchema, HdCapsuleSchema, HdCategoriesSchema, HdConeSchema, HdContainerSchema, HdCoordSysBindingSchema, HdCoordSysSchema, HdCubeSchema, HdCylinderSchema, HdDataSharingSchema, HdDependenciesSchema, HdDependencySchema, HdDisplayFilterSchema, HdExtComputationInputComputationSchema, HdExtComputationOutputSchema, HdExtComputationPrimvarSchema, HdExtComputationPrimvarsSchema, HdExtComputationSchema, HdExtentSchema, HdGeomSubsetSchema, HdGeomSubsetsSchema, HdImageShaderSchema, HdInstanceCategoriesSchema, HdInstancedBySchema, HdInstanceIndicesSchema, HdInstancerTopologySchema, HdInstanceSchema, HdIntegratorSchema, HdLegacyDisplayStyleSchema, HdLensDistortionSchema, HdLightSchema, HdMaterialBindingSchema, HdMaterialBindingsSchema, HdMaterialConnectionSchema, HdMaterialInterfaceMappingSchema, HdMaterialNetworkSchema, HdMaterialNodeParameterSchema, HdMaterialNodeSchema, HdMaterialSchema, HdMeshSchema, HdMeshTopologySchema, HdNurbsCurvesSchema, HdNurbsPatchSchema, HdNurbsPatchTrimCurveSchema, HdPrimOriginSchema, HdPrimvarSchema, HdPrimvarsSchema, HdPurposeSchema, HdRenderBufferSchema, HdRenderCapabilitiesSchema, HdRenderProductSchema, HdRenderSettingsSchema, HdRenderVarSchema, HdSampleFilterSchema, HdSceneGlobalsSchema, HdSelectionSchema, HdSphereSchema, HdSplitDiopterSchema, HdSubdivisionTagsSchema, HdSystemSchema, HdVisibilitySchema, HdVolumeFieldBindingSchema, HdVolumeFieldSchema, HdXformSchema, UsdImagingCollectionMaterialBindingSchema, UsdImagingCollectionMaterialBindingsSchema, UsdImagingDirectMaterialBindingSchema, UsdImagingDirectMaterialBindingsSchema, UsdImagingExtentsHintSchema, UsdImagingGeomModelSchema, UsdImagingModelSchema, UsdImagingUsdPrimInfoSchema, UsdImagingUsdRenderProductSchema, UsdImagingUsdRenderSettingsSchema, and UsdImagingUsdRenderVarSchema.

Public Types

using UnderlyingDataSource = HdContainerDataSource
 

Public Member Functions

 HdSchema (HdContainerDataSourceHandle container)
 
HD_API HdContainerDataSourceHandle GetContainer ()
 Returns the container data source that this schema is interpreting. More...
 
HD_API bool IsDefined () const
 
 operator bool () const
 

Protected Member Functions

template<typename T >
T::Handle _GetTypedDataSource (TfToken name)
 

Protected Attributes

HdContainerDataSourceHandle _container
 

Detailed Description

Schema classes represent a structured view of the inherently unstructured container data source passed into the constructor. They're used to represent what fields a given object is expected to have. Note that a schema can be applied to a container which doesn't contain all of the named fields; in that case, some of the field accessors will return null, and the caller should use default values for those fields.

Definition at line 42 of file schema.h.

Member Typedef Documentation

Definition at line 59 of file schema.h.

Constructor & Destructor Documentation

HdSchema::HdSchema ( HdContainerDataSourceHandle  container)
inline

Definition at line 45 of file schema.h.

Member Function Documentation

template<typename T >
T::Handle HdSchema::_GetTypedDataSource ( TfToken  name)
inlineprotected

Returns a datasource of the requested type for the given name: schema implementations can use this to ask for child containers, sampled values, vectors, etc. If the key has the wrong type, this function returns null.

Definition at line 69 of file schema.h.

HD_API HdContainerDataSourceHandle HdSchema::GetContainer ( )

Returns the container data source that this schema is interpreting.

HD_API bool HdSchema::IsDefined ( ) const
HdSchema::operator bool ( ) const
inlineexplicit

Returns true if this schema is applied on top of a non-null container.

Definition at line 57 of file schema.h.

Member Data Documentation

HdContainerDataSourceHandle HdSchema::_container
protected

Definition at line 62 of file schema.h.


The documentation for this class was generated from the following file: