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

#include <lightAdapter.h>

+ Inheritance diagram for UsdImagingLightAdapter:

Public Types

typedef UsdImagingPrimAdapter BaseAdapter
 
- Public Types inherited from UsdImagingPrimAdapter
enum  PopulationMode { RepresentsSelf, RepresentsSelfAndDescendents, RepresentedByAncestor }
 

Public Member Functions

 UsdImagingLightAdapter ()
 
USDIMAGING_API ~UsdImagingLightAdapter () override
 
Scene Index Support
USDIMAGING_API
HdContainerDataSourceHandle 
GetImagingSubprimData (UsdPrim const &prim, TfToken const &subprim, const UsdImagingDataSourceStageGlobals &stageGlobals) override
 
USDIMAGING_API
HdDataSourceLocatorSet 
InvalidateImagingSubprim (UsdPrim const &prim, TfToken const &subprim, TfTokenVector const &properties, UsdImagingPropertyInvalidationType invalidationType) override
 
Initialization
USDIMAGING_API SdfPath Populate (UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=NULL) override
 
USDIMAGING_API bool IsSupported (UsdImagingIndexProxy const *index) const override
 Returns true if the adapter can be populated into the target index. More...
 
Parallel Setup and Resolve
USDIMAGING_API void TrackVariability (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits *timeVaryingBits, UsdImagingInstancerContext const *instancerContext=NULL) const override
 Thread Safe. More...
 
USDIMAGING_API void UpdateForTime (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, UsdImagingInstancerContext const *instancerContext=NULL) const override
 Thread Safe. More...
 
Change Processing
USDIMAGING_API HdDirtyBits ProcessPropertyChange (UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName) override
 
USDIMAGING_API void MarkDirty (UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits dirty, UsdImagingIndexProxy *index) override
 
USDIMAGING_API void MarkTransformDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
USDIMAGING_API void MarkVisibilityDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
USDIMAGING_API void MarkLightParamsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
virtual USDIMAGING_API void MarkCollectionsDirty (UsdPrim const &prim, SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
- Public Member Functions inherited from UsdImagingPrimAdapter
 UsdImagingPrimAdapter ()
 
virtual USDIMAGING_API ~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 MarkMaterialDirty (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
 
virtual USDIMAGING_API VtValue GetLightParamValue (const UsdPrim &prim, const SdfPath &cachePath, const TfToken &paramName, 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 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 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 USDIMAGING_API
TfTokenVector 
GetImagingSubprims (UsdPrim const &prim)
 
virtual USDIMAGING_API TfToken GetImagingSubprimType (UsdPrim const &prim, TfToken const &subprim)
 
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
 

Static Public Member Functions

static USDIMAGING_API bool IsEnabledSceneLights ()
 
- Static Public Member Functions inherited from UsdImagingPrimAdapter
static USDIMAGING_API UsdAttribute LookupLightParamAttribute (UsdPrim const &prim, TfToken const &paramName)
 Provides to paramName->UsdAttribute value mappings. More...
 
static USDIMAGING_API bool ShouldCullSubtree (UsdPrim const &prim)
 

Utilities

static USDIMAGING_API SdfPath _ResolveCachePath (const SdfPath &usdPath, const UsdImagingInstancerContext *instancerContext)
 
USDIMAGING_API VtValue GetMaterialResource (UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time) const override
 
USDIMAGING_API SdfPath _AddSprim (const TfToken &primType, const UsdPrim &usdPrim, UsdImagingIndexProxy *index, const UsdImagingInstancerContext *instancerContext=nullptr)
 
USDIMAGING_API void _RemoveSprim (const TfToken &primType, const SdfPath &cachePath, UsdImagingIndexProxy *index)
 
void _RemovePrim (SdfPath const &cachePath, UsdImagingIndexProxy *index) override
 
void _UnregisterLightCollections (SdfPath const &cachePath)
 
void _RegisterLightCollections (UsdPrim const &prim)
 

Detailed Description

Base class for all lights.

Definition at line 42 of file lightAdapter.h.

Member Typedef Documentation

Constructor & Destructor Documentation

UsdImagingLightAdapter::UsdImagingLightAdapter ( )
inline

Definition at line 49 of file lightAdapter.h.

USDIMAGING_API UsdImagingLightAdapter::~UsdImagingLightAdapter ( )
override

Member Function Documentation

USDIMAGING_API SdfPath UsdImagingLightAdapter::_AddSprim ( const TfToken primType,
const UsdPrim usdPrim,
UsdImagingIndexProxy index,
const UsdImagingInstancerContext instancerContext = nullptr 
)

Updates the collection cache content Checks for collection hash change and returns true if they are different

void UsdImagingLightAdapter::_RegisterLightCollections ( UsdPrim const &  prim)
protected

Updates the collection cache content Checks for collection hash change and returns true if they are different

void UsdImagingLightAdapter::_RemovePrim ( SdfPath const &  cachePath,
UsdImagingIndexProxy index 
)
overrideprotectedvirtual

Updates the collection cache content Checks for collection hash change and returns true if they are different

Implements UsdImagingPrimAdapter.

Reimplemented in UsdImagingSphereLightAdapter, UsdImagingRectLightAdapter, UsdImagingPluginLightAdapter, and UsdImagingPortalLightAdapter.

USDIMAGING_API void UsdImagingLightAdapter::_RemoveSprim ( const TfToken primType,
const SdfPath cachePath,
UsdImagingIndexProxy index 
)

Updates the collection cache content Checks for collection hash change and returns true if they are different

static USDIMAGING_API SdfPath UsdImagingLightAdapter::_ResolveCachePath ( const SdfPath usdPath,
const UsdImagingInstancerContext instancerContext 
)
static

Updates the collection cache content Checks for collection hash change and returns true if they are different

void UsdImagingLightAdapter::_UnregisterLightCollections ( SdfPath const &  cachePath)
protected

Updates the collection cache content Checks for collection hash change and returns true if they are different

USDIMAGING_API HdContainerDataSourceHandle UsdImagingLightAdapter::GetImagingSubprimData ( UsdPrim const &  prim,
TfToken const &  subprim,
const UsdImagingDataSourceStageGlobals stageGlobals 
)
overridevirtual

Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.

Reimplemented from UsdImagingPrimAdapter.

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

Updates the collection cache content Checks for collection hash change and returns true if they are different

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API HdDataSourceLocatorSet UsdImagingLightAdapter::InvalidateImagingSubprim ( UsdPrim const &  prim,
TfToken const &  subprim,
TfTokenVector const &  properties,
UsdImagingPropertyInvalidationType  invalidationType 
)
overridevirtual

Returns the prim's behavior with regard to population and invalidation. See PopulationMode for possible values.

Reimplemented from UsdImagingPrimAdapter.

static USDIMAGING_API bool UsdImagingLightAdapter::IsEnabledSceneLights ( )
static
USDIMAGING_API bool UsdImagingLightAdapter::IsSupported ( UsdImagingIndexProxy const *  index) const
overridevirtual

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

Reimplemented from UsdImagingPrimAdapter.

Reimplemented in UsdImagingSphereLightAdapter, UsdImagingRectLightAdapter, UsdImagingPluginLightAdapter, and UsdImagingPortalLightAdapter.

virtual USDIMAGING_API void UsdImagingLightAdapter::MarkCollectionsDirty ( UsdPrim const &  prim,
SdfPath const &  cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::MarkDirty ( UsdPrim const &  prim,
SdfPath const &  cachePath,
HdDirtyBits  dirty,
UsdImagingIndexProxy index 
)
overridevirtual

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

Implements UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::MarkLightParamsDirty ( UsdPrim const &  prim,
SdfPath const &  cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::MarkTransformDirty ( UsdPrim const &  prim,
SdfPath const &  cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::MarkVisibilityDirty ( UsdPrim const &  prim,
SdfPath const &  cachePath,
UsdImagingIndexProxy index 
)
overridevirtual

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

Reimplemented from UsdImagingPrimAdapter.

USDIMAGING_API SdfPath UsdImagingLightAdapter::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 prims in the render index using the given proxy.

Implements UsdImagingPrimAdapter.

Reimplemented in UsdImagingSphereLightAdapter, UsdImagingRectLightAdapter, UsdImagingPluginLightAdapter, and UsdImagingPortalLightAdapter.

USDIMAGING_API HdDirtyBits UsdImagingLightAdapter::ProcessPropertyChange ( UsdPrim const &  prim,
SdfPath const &  cachePath,
TfToken const &  propertyName 
)
overridevirtual

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

Implements UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::TrackVariability ( UsdPrim const &  prim,
SdfPath const &  cachePath,
HdDirtyBits timeVaryingBits,
UsdImagingInstancerContext const *  instancerContext = NULL 
) const
overridevirtual

Thread Safe.

Implements UsdImagingPrimAdapter.

USDIMAGING_API void UsdImagingLightAdapter::UpdateForTime ( UsdPrim const &  prim,
SdfPath const &  cachePath,
UsdTimeCode  time,
HdDirtyBits  requestedBits,
UsdImagingInstancerContext const *  instancerContext = NULL 
) const
overridevirtual

Thread Safe.

Implements UsdImagingPrimAdapter.


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