HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UsdImagingGLDrawModeAdapter Class Reference

#include <drawModeAdapter.h>

+ Inheritance diagram for UsdImagingGLDrawModeAdapter:

Public Types

using BaseAdapter = UsdImagingPrimAdapter
 

Public Member Functions

USDIMAGINGGL_API UsdImagingGLDrawModeAdapter ()
 
USDIMAGINGGL_API ~UsdImagingGLDrawModeAdapter () override
 
SdfPath Populate (UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=NULL) override
 
bool ShouldCullChildren () const override
 
bool IsSupported (UsdImagingIndexProxy const *index) const override
 Returns true if the adapter can be populated into the target index. More...
 
bool CanPopulateUsdInstance () const override
 
Parallel Setup and Resolve
USDIMAGINGGL_API void TrackVariability (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits *timeVaryingBits, UsdImagingInstancerContext const *instancerContext=NULL) const override
 
USDIMAGINGGL_API void UpdateForTime (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, UsdImagingInstancerContext const *instancerContext=NULL) const override
 
Change Processing
USDIMAGINGGL_API HdDirtyBits ProcessPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &property) override
 
USDIMAGINGGL_API void MarkDirty (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits dirty, UsdImagingIndexProxy *index) override
 
USDIMAGINGGL_API void MarkTransformDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
USDIMAGINGGL_API void MarkVisibilityDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
USDIMAGINGGL_API void MarkMaterialDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
- Public Member Functions inherited from UsdImagingPrimAdapter
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 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 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
 
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...
 
USDIMAGING_API bool IsChildPath (SdfPath const &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 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...
 
USDIMAGING_API SdfPath GetMaterialUsdPath (UsdPrim const &prim) const
 
USDIMAGING_API TfToken GetModelDrawMode (UsdPrim const &prim)
 
USDIMAGING_API VtArray
< VtIntArray > 
GetPerPrototypeIndices (UsdPrim const &prim, UsdTimeCode time) const
 
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
 
 UsdImagingPrimAdapter ()
 
virtual USDIMAGING_API ~UsdImagingPrimAdapter ()
 
virtual USDIMAGING_API bool ShouldIgnoreNativeInstanceSubtrees () const
 
virtual USDIMAGING_API bool IsInstancerAdapter () const
 

Data access

USDIMAGINGGL_API VtValue Get (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, VtIntArray *outIndices) const override
 
USDIMAGINGGL_API HdCullStyle GetCullStyle (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 Gets the cullstyle of a specific path in the scene graph. More...
 
USDIMAGINGGL_API VtValue GetTopology (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 
USDIMAGINGGL_API GfRange3d GetExtent (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 
USDIMAGINGGL_API bool GetDoubleSided (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 Reads double-sided from the given prim. If not authored, returns false. More...
 
USDIMAGINGGL_API GfMatrix4d GetTransform (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, bool ignoreRootTransform=false) const override
 
USDIMAGINGGL_API SdfPath GetMaterialId (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 The root transform provided by the delegate. More...
 
USDIMAGING_API VtValue GetMaterialResource (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 The root transform provided by the delegate. More...
 
USDIMAGINGGL_API void _RemovePrim (SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 Returns true if the adapter can be populated into the target index. More...
 

Detailed Description

Delegate support for the drawMode attribute on UsdGeomModelAPI.

Definition at line 38 of file drawModeAdapter.h.

Member Typedef Documentation

Constructor & Destructor Documentation

USDIMAGINGGL_API UsdImagingGLDrawModeAdapter::UsdImagingGLDrawModeAdapter ( )
USDIMAGINGGL_API UsdImagingGLDrawModeAdapter::~UsdImagingGLDrawModeAdapter ( )
override

Member Function Documentation

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::_RemovePrim ( SdfPath const cachePath,
UsdImagingIndexProxy index 
)
overrideprotectedvirtual

Returns true if the adapter can be populated into the target index.

Implements UsdImagingPrimAdapter.

bool UsdImagingGLDrawModeAdapter::CanPopulateUsdInstance ( ) const
overridevirtual

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.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API VtValue UsdImagingGLDrawModeAdapter::Get ( UsdPrim const prim,
SdfPath const cachePath,
TfToken const key,
UsdTimeCode  time,
VtIntArray *  outIndices 
) const
overridevirtual

Gets the value of the parameter named key for the given prim (which has the given cache path) and given time. If outIndices is not nullptr and the value has indices, it will return the unflattened value and set outIndices to the value's associated indices.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API HdCullStyle UsdImagingGLDrawModeAdapter::GetCullStyle ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

Gets the cullstyle of a specific path in the scene graph.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API bool UsdImagingGLDrawModeAdapter::GetDoubleSided ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

Reads double-sided from the given prim. If not authored, returns false.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API GfRange3d UsdImagingGLDrawModeAdapter::GetExtent ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

Reads the extent from the given prim. If the extent is not authored, an empty GfRange3d is returned, the extent will not be computed.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API SdfPath UsdImagingGLDrawModeAdapter::GetMaterialId ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

The root transform provided by the delegate.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API VtValue UsdImagingGLDrawModeAdapter::GetMaterialResource ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

The root transform provided by the delegate.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API VtValue UsdImagingGLDrawModeAdapter::GetTopology ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time 
) const
overridevirtual

Gets the topology object of a specific Usd prim. If the adapter is a mesh it will return an HdMeshTopology, if it is of type basis curves, it will return an HdBasisCurvesTopology. If the adapter does not have a topology, it returns an empty VtValue.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API GfMatrix4d UsdImagingGLDrawModeAdapter::GetTransform ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time,
bool  ignoreRootTransform = false 
) const
overridevirtual

Fetches the transform for the given prim at the given time from a pre-computed cache of prim transforms. Requesting transforms at incoherent times is currently inefficient.

Reimplemented from UsdImagingPrimAdapter.

bool UsdImagingGLDrawModeAdapter::IsSupported ( UsdImagingIndexProxy const index) const
overridevirtual

Returns true if the adapter can be populated into the target index.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::MarkDirty ( UsdPrim const prim,
SdfPath const cachePath,
HdDirtyBits  dirty,
UsdImagingIndexProxy index 
)
overridevirtual

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.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::MarkMaterialDirty ( UsdPrim const prim,
SdfPath const cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::MarkTransformDirty ( UsdPrim const prim,
SdfPath const cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::MarkVisibilityDirty ( UsdPrim const prim,
SdfPath const cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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.

Reimplemented from UsdImagingPrimAdapter.

SdfPath UsdImagingGLDrawModeAdapter::Populate ( UsdPrim const prim,
UsdImagingIndexProxy index,
UsdImagingInstancerContext const instancerContext = NULL 
)
overridevirtual

Called to populate the RenderIndex for this UsdPrim. The adapter is expected to create one or more Rprims in the render index using the given proxy.

Implements UsdImagingPrimAdapter.

USDIMAGINGGL_API HdDirtyBits UsdImagingGLDrawModeAdapter::ProcessPropertyChange ( UsdPrim const prim,
SdfPath const cachePath,
TfToken const propertyName 
)
overridevirtual

Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must be resynchronized.

Implements UsdImagingPrimAdapter.

bool UsdImagingGLDrawModeAdapter::ShouldCullChildren ( ) const
overridevirtual

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.

Reimplemented from UsdImagingPrimAdapter.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::TrackVariability ( UsdPrim const prim,
SdfPath const cachePath,
HdDirtyBits timeVaryingBits,
UsdImagingInstancerContext const instancerContext = NULL 
) const
overridevirtual

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.

USDIMAGINGGL_API void UsdImagingGLDrawModeAdapter::UpdateForTime ( UsdPrim const prim,
SdfPath const cachePath,
UsdTimeCode  time,
HdDirtyBits  requestedBits,
UsdImagingInstancerContext const instancerContext = NULL 
) const
overridevirtual

Populates the cache for the given prim, time and requestedBits.

This method is expected to be called from multiple threads.

Implements UsdImagingPrimAdapter.


The documentation for this class was generated from the following file: