24#ifndef PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_PRIM_H
25#define PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_PRIM_H
27#include "pxr/imaging/hd/dataSource.h"
28#include "pxr/imaging/hd/dataSourceTypeDefs.h"
35#include "pxr/usdImaging/usdImaging/api.h"
36#include "pxr/usdImaging/usdImaging/dataSourceStageGlobals.h"
37#include "pxr/usdImaging/usdImaging/dataSourcePrimvars.h"
38#include "pxr/usdImaging/usdImaging/types.h"
40PXR_NAMESPACE_OPEN_SCOPE
58 HdDataSourceBaseHandle
Get(
const TfToken &name)
override;
99 HdDataSourceBaseHandle
Get(
const TfToken &name)
override;
140 HdSampledDataSource::Time startTime,
141 HdSampledDataSource::Time endTime,
142 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override;
153 const HdVec3fArrayDataSourceHandle &extentDs,
158 HdVec3fArrayDataSourceHandle _extentDs;
200 HdVec3fArrayDataSourceHandle _extentDs;
245 HdVec3fArrayDataSourceHandle _extentDs;
270 HdSampledDataSource::Time startTime,
271 HdSampledDataSource::Time endTime,
272 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override {
325 HdSampledDataSource::Time startTime,
326 HdSampledDataSource::Time endTime,
327 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override;
469 UsdImagingPropertyInvalidationType invalidationType);
491 const SdfPath &_GetSceneIndexPath()
const {
492 return _sceneIndexPath;
495 const UsdPrim &_GetUsdPrim()
const {
500 return _stageGlobals;
511PXR_NAMESPACE_CLOSE_SCOPE
Stores a 4x4 matrix of double elements.
Basic type for a vector of 3 double components.
A datasource representing structured (named, hierarchical) data, for example a geometric primitive or...
Represents a set of data source locators closed under descendancy.
A datasource representing a concretely-typed sampled value.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
Object for efficiently making repeated queries for attribute values.
Data source representing either the minimum or maximum of the local prim extent.
GfVec3d GetTypedValue(HdSampledDataSource::Time shutterOffset) override
Returns bool at a given shutterOffset for the value of this flag.
bool GetContributingSampleTimesForInterval(HdSampledDataSource::Time startTime, HdSampledDataSource::Time endTime, std::vector< HdSampledDataSource::Time > *outSampleTimes) override
Fills the outSampleTimes with the times between startTime and endTime that have valid sample data and...
VtValue GetValue(HdSampledDataSource::Time shutterOffset) override
Returns VtValue at a given shutterOffset for the value of this flag.
Data source representing local prim extent.
TfTokenVector GetNames() override
Returns the names contained in this datasource.
HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the data source for the given 'name'.
Data source representing extents hint of a geom model API prim.
TfTokenVector GetNames() override
Returns names of (hydra) purposes for which we have extentsHint.
HdDataSourceBaseHandle Get(const TfToken &name) override
Takes the hydra name of a purpose and returns the corresponding values from extentsHint as HdExtentSc...
Data source representing a basic USD prim.
USDIMAGING_API TfTokenVector GetNames() override
Returns the names for which this data source can return meaningful results.
USDIMAGING_API UsdImagingDataSourcePrim(const SdfPath &sceneIndexPath, UsdPrim usdPrim, const UsdImagingDataSourceStageGlobals &stageGlobals)
Use to construct a new UsdImagingDataSourcePrim.
static USDIMAGING_API HdDataSourceLocatorSet Invalidate(UsdPrim const &prim, const TfToken &subprim, const TfTokenVector &properties, UsdImagingPropertyInvalidationType invalidationType)
Returns the hydra attribute set we should invalidate if the value of the USD properties in properties...
USDIMAGING_API HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the data source representing name, if valid.
Data source to access the underlying UsdPrim.
TfTokenVector GetNames() override
Returns the list of names for which Get(...) is expected to return a non-null value.
HdDataSourceBaseHandle Get(const TfToken &name) override
Get(UsdImagingTokens->usdPrim) returns a data source containing the underyling UsdPrim.
Data source representing prim purpose for a USD imageable.
TfTokenVector GetNames() override
Returns the names contained in this data source.
HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the data source for the given 'name'.
This class is used as a context object with global stage information, that gets passed down to dataso...
Data source representing prim visibility for a USD imageable.
TfTokenVector GetNames() override
Returns the names contained in this data source.
HdDataSourceBaseHandle Get(const TfToken &name) override
Returns the data source for the given 'name'.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Provides a container which may hold any type, and provides introspection and iteration over array typ...
std::vector< TfToken > TfTokenVector
Convenience types.