24#ifndef PXR_IMAGING_HD_OVERLAY_CONTAINER_DATA_SOURCE_H
25#define PXR_IMAGING_HD_OVERLAY_CONTAINER_DATA_SOURCE_H
27#include "pxr/imaging/hd/dataSource.h"
29PXR_NAMESPACE_OPEN_SCOPE
42 HD_DECLARE_DATASOURCE_INITIALIZER_LIST_NEW(
44 HdContainerDataSourceHandle);
48 std::initializer_list<HdContainerDataSourceHandle> sources);
53 HdContainerDataSourceHandle *containers);
57 const HdContainerDataSourceHandle &src1,
58 const HdContainerDataSourceHandle &src2);
62 const HdContainerDataSourceHandle &src1,
63 const HdContainerDataSourceHandle &src2,
64 const HdContainerDataSourceHandle &src3);
71 HdContainerDataSourceHandle
73 const HdContainerDataSourceHandle &src1,
74 const HdContainerDataSourceHandle &src2);
79 HdDataSourceBaseHandle
Get(
const TfToken &name)
override;
88PXR_NAMESPACE_CLOSE_SCOPE
A datasource representing structured (named, hierarchical) data, for example a geometric primitive or...
Lazily composes two or more container source hierarchies Earlier entries on the containers array have...
static HD_API HdContainerDataSourceHandle OverlayedContainerDataSources(const HdContainerDataSourceHandle &src1, const HdContainerDataSourceHandle &src2)
Creates HdOverlayContainerDataSource from sources, but only if needed.
HD_API TfTokenVector GetNames() override
Returns the list of names for which Get(...) is expected to return a non-null value.
HD_API HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the child datasource of the given name.
Token for efficient comparison, assignment, and hashing of known strings.
std::vector< TfToken > TfTokenVector
Convenience types.