HDK
|
#include <sceneIndexPrimAdapter.h>
Public Types | |
using | BaseAdapter = UsdImagingPrimAdapter |
![]() | |
enum | PopulationMode { RepresentsSelf, RepresentsSelfAndDescendents, RepresentedByAncestor } |
Public Member Functions | |
USDIMAGING_API | UsdImagingSceneIndexPrimAdapter () |
USDIMAGING_API | ~UsdImagingSceneIndexPrimAdapter () override |
Scene Index Support | |
TfTokenVector | GetImagingSubprims (UsdPrim const &prim) override=0 |
TfToken | GetImagingSubprimType (UsdPrim const &prim, TfToken const &subprim) override=0 |
HdContainerDataSourceHandle | GetImagingSubprimData (UsdPrim const &prim, TfToken const &subprim, const UsdImagingDataSourceStageGlobals &stageGlobals) override=0 |
HdDataSourceLocatorSet | InvalidateImagingSubprim (UsdPrim const &prim, TfToken const &subprim, TfTokenVector const &properties, UsdImagingPropertyInvalidationType invalidationType) override=0 |
Legacy | |
Implementation of deprecated pure-virtuals; these functions don't participate in the stage scene index. | |
USDIMAGING_API SdfPath | Populate (UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=nullptr) overridefinal |
USDIMAGING_API void | TrackVariability (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits *timeVaryingBits, UsdImagingInstancerContext const *instancerContext=nullptr) const overridefinal |
USDIMAGING_API void | UpdateForTime (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, UsdImagingInstancerContext const *instancerContext=nullptr) const overridefinal |
USDIMAGING_API HdDirtyBits | ProcessPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName) overridefinal |
USDIMAGING_API void | MarkDirty (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits dirty, UsdImagingIndexProxy *index) overridefinal |
USDIMAGING_API void | _RemovePrim (SdfPath const &cachePath, UsdImagingIndexProxy *index) overridefinal |
Returns whether custom shading of prims is enabled. More... | |
![]() | |
virtual USDIMAGING_API | ~UsdImagingPrimAdapter ()=default |
virtual USDIMAGING_API HdDirtyBits | ProcessPrimChange (UsdPrim const &prim, SdfPath const &cachePath, TfTokenVector const &changedFields) |
virtual USDIMAGING_API void | ProcessPrimResync (SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | ProcessPrimRemoval (SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkRefineLevelDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkReprDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkCullStyleDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkRenderTagDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkTransformDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkVisibilityDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkMaterialDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkLightParamsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkWindowPolicyDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | MarkCollectionsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) |
virtual USDIMAGING_API void | InvokeComputation (SdfPath const &cachePath, HdExtComputationContext *context) |
virtual USDIMAGING_API std::vector< VtArray< TfToken > > | GetInstanceCategories (UsdPrim const &prim) |
Return an array of the categories used by each instance. More... | |
virtual USDIMAGING_API GfMatrix4d | GetInstancerTransform (UsdPrim const &instancerPrim, SdfPath const &instancerPath, UsdTimeCode time) const |
virtual USDIMAGING_API size_t | SampleInstancerTransform (UsdPrim const &instancerPrim, SdfPath const &instancerPath, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, GfMatrix4d *sampleValues) |
virtual USDIMAGING_API SdfPath | GetInstancerId (UsdPrim const &usdPrim, SdfPath const &cachePath) const |
Return the instancerId for this prim. More... | |
virtual USDIMAGING_API SdfPathVector | GetInstancerPrototypes (UsdPrim const &usdPrim, SdfPath const &cachePath) const |
Return the list of known prototypes of this prim. More... | |
virtual USDIMAGING_API size_t | SamplePrimvar (UsdPrim const &usdPrim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, VtValue *sampleValues, VtIntArray *sampleIndices) |
virtual USDIMAGING_API PxOsdSubdivTags | GetSubdivTags (UsdPrim const &usdPrim, SdfPath const &cachePath, UsdTimeCode time) const |
Get the subdiv tags for this prim. More... | |
virtual USDIMAGING_API GfMatrix4d | GetRelativeInstancerTransform (SdfPath const &instancerPath, SdfPath const &protoInstancerPath, UsdTimeCode time) const |
virtual USDIMAGING_API SdfPath | GetScenePrimPath (SdfPath const &cachePath, int instanceIndex, HdInstancerContext *instancerCtx) const |
virtual USDIMAGING_API SdfPathVector | GetScenePrimPaths (SdfPath const &cachePath, std::vector< int > const &instanceIndices, std::vector< HdInstancerContext > *instancerCtxs) const |
virtual USDIMAGING_API SdfPath | GetDataSharingId (SdfPath const &cachePath) const |
virtual USDIMAGING_API bool | PopulateSelection (HdSelection::HighlightMode const &highlightMode, SdfPath const &cachePath, UsdPrim const &usdPrim, int const hydraInstanceIndex, VtIntArray const &parentInstanceIndices, HdSelectionSharedPtr const &result) const |
virtual USDIMAGING_API HdVolumeFieldDescriptorVector | GetVolumeFieldDescriptors (UsdPrim const &usdPrim, SdfPath const &id, UsdTimeCode time) const |
virtual USDIMAGING_API VtValue | GetLightParamValue (const UsdPrim &prim, const SdfPath &cachePath, const TfToken ¶mName, UsdTimeCode time) const |
USDIMAGING_API GfMatrix4d | GetRootTransform () const |
The root transform provided by the delegate. More... | |
USDIMAGING_API void | SetDelegate (UsdImagingDelegate *delegate) |
A thread-local XformCache provided by the delegate. More... | |
virtual USDIMAGING_API bool | IsChildPath (const SdfPath &path) const |
The root transform provided by the delegate. More... | |
virtual USDIMAGING_API bool | GetVisible (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
virtual USDIMAGING_API TfToken | GetPurpose (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &instanceInheritablePurpose) const |
USDIMAGING_API TfToken | GetInheritablePurpose (UsdPrim const &prim) const |
virtual USDIMAGING_API GfMatrix4d | GetTransform (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, bool ignoreRootTransform=false) const |
virtual USDIMAGING_API size_t | SampleTransform (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, size_t maxNumSamples, float *sampleTimes, GfMatrix4d *sampleValues) |
Samples the transform for the given prim. More... | |
virtual USDIMAGING_API VtValue | Get (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, VtIntArray *outIndices) const |
virtual USDIMAGING_API HdCullStyle | GetCullStyle (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
Gets the cullstyle of a specific path in the scene graph. More... | |
USDIMAGING_API SdfPath | GetMaterialUsdPath (UsdPrim const &prim) const |
USDIMAGING_API TfToken | GetModelDrawMode (UsdPrim const &prim) |
USDIMAGING_API HdModelDrawMode | GetFullModelDrawMode (UsdPrim const &prim) |
USDIMAGING_API VtArray < VtIntArray > | GetPerPrototypeIndices (UsdPrim const &prim, UsdTimeCode time) const |
virtual USDIMAGING_API VtValue | GetTopology (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
virtual USDIMAGING_API GfRange3d | GetExtent (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
virtual USDIMAGING_API bool | GetDoubleSided (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
Reads double-sided from the given prim. If not authored, returns false. More... | |
virtual USDIMAGING_API SdfPath | GetMaterialId (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
The root transform provided by the delegate. More... | |
virtual USDIMAGING_API VtValue | GetMaterialResource (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const |
The root transform provided by the delegate. More... | |
virtual USDIMAGING_API const TfTokenVector & | GetExtComputationSceneInputNames (SdfPath const &cachePath) const |
virtual USDIMAGING_API HdExtComputationInputDescriptorVector | GetExtComputationInputs (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API HdExtComputationOutputDescriptorVector | GetExtComputationOutputs (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API HdExtComputationPrimvarDescriptorVector | GetExtComputationPrimvars (UsdPrim const &prim, SdfPath const &cachePath, HdInterpolation interpolation, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API VtValue | GetExtComputationInput (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &name, UsdTimeCode time, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API size_t | SampleExtComputationInput (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &name, UsdTimeCode time, const UsdImagingInstancerContext *instancerContext, size_t maxSampleCount, float *sampleTimes, VtValue *sampleValues) |
virtual USDIMAGING_API std::string | GetExtComputationKernel (UsdPrim const &prim, SdfPath const &cachePath, const UsdImagingInstancerContext *instancerContext) const |
virtual USDIMAGING_API VtValue | GetInstanceIndices (UsdPrim const &instancerPrim, SdfPath const &instancerCachePath, SdfPath const &prototypeCachePath, UsdTimeCode time) const |
virtual bool | IsSupported (UsdImagingIndexProxy const *index) const |
Returns true if the adapter can be populated into the target index. More... | |
virtual USDIMAGING_API PopulationMode | GetPopulationMode () |
virtual USDIMAGING_API HdDataSourceLocatorSet | InvalidateImagingSubprimFromDescendent (UsdPrim const &prim, UsdPrim const &descendentPrim, TfToken const &subprim, TfTokenVector const &properties, UsdImagingPropertyInvalidationType invalidationType) |
virtual USDIMAGING_API bool | ShouldCullChildren () const |
virtual USDIMAGING_API bool | ShouldIgnoreNativeInstanceSubtrees () const |
virtual USDIMAGING_API bool | IsInstancerAdapter () const |
virtual USDIMAGING_API bool | CanPopulateUsdInstance () const |
The base class prim adapter for scene index support. Note that while the plugin system uses UsdImagingPrimAdapter, that class is overloaded with functionality for both UsdImagingStageSceneIndex and UsdImagingDelegate, and (e.g.) has a bunch of pure virtual functions that are only relevant to UsdImagingDelegate.
Pure scene index prim types should consider this the base class, and only use API defined here.
Definition at line 27 of file sceneIndexPrimAdapter.h.
Definition at line 30 of file sceneIndexPrimAdapter.h.
USDIMAGING_API UsdImagingSceneIndexPrimAdapter::UsdImagingSceneIndexPrimAdapter | ( | ) |
|
override |
|
finaloverridevirtual |
Returns whether custom shading of prims is enabled.
Implements UsdImagingPrimAdapter.
|
overridepure virtual |
Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.
Reimplemented from UsdImagingPrimAdapter.
Implemented in UsdSkelImagingAnimationAdapter, and UsdSkelImagingBlendShapeAdapter.
|
overridepure virtual |
Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.
Reimplemented from UsdImagingPrimAdapter.
Implemented in UsdSkelImagingAnimationAdapter, and UsdSkelImagingBlendShapeAdapter.
|
overridepure virtual |
Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.
Reimplemented from UsdImagingPrimAdapter.
Implemented in UsdSkelImagingAnimationAdapter, and UsdSkelImagingBlendShapeAdapter.
|
overridepure virtual |
Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.
Reimplemented from UsdImagingPrimAdapter.
Implemented in UsdSkelImagingAnimationAdapter, and UsdSkelImagingBlendShapeAdapter.
|
finaloverridevirtual |
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized.
changedFields
contains a list of changed scene description fields for this prim. This may be empty in certain cases, like the addition of an inert prim spec for the given prim
.
The default implementation returns HdChangeTracker::AllDirty if any of the changed fields are plugin metadata fields, HdChangeTracker::Clean otherwise.
Implements UsdImagingPrimAdapter.
|
finaloverridevirtual |
Called to populate the RenderIndex for this UsdPrim. The adapter is expected to create one or more prims in the render index using the given proxy.
Implements UsdImagingPrimAdapter.
|
finaloverridevirtual |
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized.
Implements UsdImagingPrimAdapter.
|
finaloverridevirtual |
For the given prim
, variability is detected and stored in timeVaryingBits
. Initial values are cached into the value cache.
This method is expected to be called from multiple threads.
Implements UsdImagingPrimAdapter.
|
finaloverridevirtual |
Populates the cache
for the given prim
, time
and requestedBits
.
This method is expected to be called from multiple threads.
Implements UsdImagingPrimAdapter.