24 #ifndef PXR_IMAGING_HD_DATA_SOURCE_LEGACY_PRIM_H
25 #define PXR_IMAGING_HD_DATA_SOURCE_LEGACY_PRIM_H
36 #define HD_LEGACY_PRIMTYPE_TOKENS \
58 : _id(id), _sceneDelegate(sceneDelegate) {}
97 HdDataSourceBaseHandle _GetPrimvarsDataSource();
98 HdDataSourceBaseHandle _GetExtComputationPrimvarsDataSource();
99 HdDataSourceBaseHandle _GetMaterialBindingsDataSource();
100 HdDataSourceBaseHandle _GetXformDataSource();
101 HdDataSourceBaseHandle _GetMaterialDataSource();
102 HdDataSourceBaseHandle _GetIntegratorDataSource();
103 HdDataSourceBaseHandle _GetSampleFilterDataSource();
104 HdDataSourceBaseHandle _GetDisplayFilterDataSource();
105 HdDataSourceBaseHandle _GetDisplayStyleDataSource();
106 HdDataSourceBaseHandle _GetInstancedByDataSource();
107 HdDataSourceBaseHandle _GetDataSharingDataSource();
108 HdDataSourceBaseHandle _GetInstancerTopologyDataSource();
109 HdDataSourceBaseHandle _GetVolumeFieldBindingDataSource();
110 HdDataSourceBaseHandle _GetCoordSysBindingDataSource();
111 HdDataSourceBaseHandle _GetVisibilityDataSource();
112 HdDataSourceBaseHandle _GetPurposeDataSource();
113 HdDataSourceBaseHandle _GetExtentDataSource();
114 HdDataSourceBaseHandle _GetCategoriesDataSource();
115 HdDataSourceBaseHandle _GetInstanceCategoriesDataSource();
116 HdDataSourceBaseHandle _GetPrmanParamsDataSource();
119 bool _IsInstanceable();
126 std::atomic_bool _primvarsBuilt;
127 bool _extComputationPrimvarsBuilt : 1;
129 HdContainerDataSourceAtomicHandle _primvars;
130 HdContainerDataSourceHandle _extComputationPrimvars;
135 HdContainerDataSourceAtomicHandle _instancerTopology;
TfTokenVector GetNames() override
HdExtComputationCallbackDataSource(const SdfPath &id, HdSceneDelegate *sceneDelegate)
void PrimDirtied(const HdDataSourceLocatorSet &locators)
HD_API void Invoke(HdExtComputationContext *context)
HdDataSourceBaseHandle Get(const TfToken &name) override
std::vector< TfToken > TfTokenVector
Convenience types.
GLuint const GLchar * name
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define HD_LEGACY_PRIMTYPE_TOKENS
#define PXR_NAMESPACE_CLOSE_SCOPE
TF_DECLARE_PUBLIC_TOKENS(HdLegacyPrimTypeTokens, HD_API, HD_LEGACY_PRIMTYPE_TOKENS)
bool HdLegacyPrimTypeIsVolumeField(TfToken const &primType)
HD_DECLARE_DATASOURCE(HdExtComputationCallbackDataSource)
HD_DECLARE_DATASOURCE(HdDataSourceLegacyPrim)
static const HdDataSourceLocatorSet & GetCachedLocators()
Return which locators PrimDirtied will respond to...
HD_DECLARE_DATASOURCE_HANDLES(HdExtComputationCallbackDataSource)