8#ifndef PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_MAPPED_H
9#define PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_MAPPED_H
11#include "pxr/usdImaging/usdImaging/dataSourceAttribute.h"
12#include "pxr/usdImaging/usdImaging/dataSourceStageGlobals.h"
14#include "pxr/imaging/hd/dataSource.h"
15#include "pxr/imaging/hd/dataSourceLocator.h"
17PXR_NAMESPACE_OPEN_SCOPE
19namespace UsdImagingDataSourceMapped_Impl
21using _ContainerMappingsSharedPtr = std::shared_ptr<struct _ContainerMappings>;
58 using DataSourceAttributeFactoryFn =
59 std::function<DataSourceAttributeFactory>;
60 using DataSourceAttributeFactoryPtr =
88 DataSourceAttributeFactoryPtr(
89 UsdImagingDataSourceAttributeNew);
101 const std::vector<AttributeMapping> &mappings,
110 using _ContainerMappingsSharedPtr =
111 UsdImagingDataSourceMapped_Impl::_ContainerMappingsSharedPtr;
114 std::vector<AttributeMapping> _absoluteMappings;
116 _ContainerMappingsSharedPtr _containerMappings;
135 using _ContainerMappingsSharedPtr =
136 UsdImagingDataSourceMapped_Impl::_ContainerMappingsSharedPtr;
148 const _ContainerMappingsSharedPtr &containerMappings,
153 _ContainerMappingsSharedPtr
const _containerMappings;
157PXR_NAMESPACE_CLOSE_SCOPE
A datasource representing structured (named, hierarchical) data, for example a geometric primitive or...
Represents an object that can identify the location of a data source.
Represents a set of data source locators closed under descendancy.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
Specify how attributes on given Usd prim maps to data sources in this (nested) container data source.
USDIMAGING_API AttributeMappings(const std::vector< AttributeMapping > &mappings, const HdDataSourceLocator &datasourcePrefix)
dataSourcePrefix is the location of this UsdImagingDataSourceMapped within a prim data source.
A data source that is a (potentially nested) container for the values of the attributes of a given Us...
USDIMAGING_API TfTokenVector GetNames() override
Returns the list of names for which Get(...) is expected to return a non-null value.
HdDataSourceLocator hdLocator
Corresponding location in this data source.
DataSourceAttributeFactoryFn factory
Function to compute data source from UsdAttribute.
TfToken usdName
Name of attribute on Usd Prim.
HdSampledDataSourceHandle(const UsdAttribute &, const UsdImagingDataSourceStageGlobals &, const SdfPath &, const HdDataSourceLocator &) DataSourceAttributeFactory
Signature of function to compute data source from attribute.
USDIMAGING_API HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the child datasource of the given name.
Specify how one attribute on given Usd prim maps to data source in this (nested) container data sourc...
This class is used as a context object with global stage information, that gets passed down to dataso...
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
std::vector< TfToken > TfTokenVector
Convenience types.