7#ifndef PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_PRIM_H
8#define PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_PRIM_H
10#include "pxr/imaging/hd/dataSource.h"
11#include "pxr/imaging/hd/dataSourceTypeDefs.h"
18#include "pxr/usdImaging/usdImaging/api.h"
19#include "pxr/usdImaging/usdImaging/dataSourceStageGlobals.h"
20#include "pxr/usdImaging/usdImaging/dataSourcePrimvars.h"
21#include "pxr/usdImaging/usdImaging/types.h"
23PXR_NAMESPACE_OPEN_SCOPE
41 HdDataSourceBaseHandle
Get(
const TfToken &name)
override;
82 HdDataSourceBaseHandle
Get(
const TfToken &name)
override;
123 HdSampledDataSource::Time startTime,
124 HdSampledDataSource::Time endTime,
125 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override;
136 const HdVec3fArrayDataSourceHandle &extentDs,
141 HdVec3fArrayDataSourceHandle _extentDs;
183 HdVec3fArrayDataSourceHandle _extentDs;
228 HdVec3fArrayDataSourceHandle _extentDs;
253 HdSampledDataSource::Time startTime,
254 HdSampledDataSource::Time endTime,
255 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override {
308 HdSampledDataSource::Time startTime,
309 HdSampledDataSource::Time endTime,
310 std::vector<HdSampledDataSource::Time> *outSampleTimes)
override;
452 UsdImagingPropertyInvalidationType invalidationType);
474 const SdfPath &_GetSceneIndexPath()
const {
475 return _sceneIndexPath;
478 const UsdPrim &_GetUsdPrim()
const {
483 return _stageGlobals;
494PXR_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.