24 #ifndef PXR_USD_IMAGING_USD_PROC_IMAGING_GENERATIVE_PROCEDURAL_ADAPTER_H 25 #define PXR_USD_IMAGING_USD_PROC_IMAGING_GENERATIVE_PROCEDURAL_ADAPTER_H 30 PXR_NAMESPACE_OPEN_SCOPE
32 class UsdProcImagingGenerativeProceduralAdapter
37 UsdProcImagingGenerativeProceduralAdapter()
43 ~UsdProcImagingGenerativeProceduralAdapter()
override =
default;
57 HdContainerDataSourceHandle GetImagingSubprimData(
77 instancerContext =
nullptr)
override;
85 HdDirtyBits requestedBits,
87 instancerContext =
nullptr)
const override;
93 VtIntArray *outIndices)
const override;
98 TfToken const& propertyName)
override;
102 virtual void MarkDirty(
UsdPrim const& prim,
108 virtual void MarkTransformDirty(
UsdPrim const& prim,
113 virtual void MarkVisibilityDirty(
UsdPrim const& prim,
120 HdDirtyBits* timeVaryingBits,
122 instancerContext =
nullptr)
const override;
127 virtual void _RemovePrim(
SdfPath const& cachePath,
137 PXR_NAMESPACE_CLOSE_SCOPE
139 #endif // PXR_USD_IMAGING_USD_PROC_IMAGING_GENERATIVE_PROCEDURAL_ADAPTER_H
This proxy class exposes a subset of the private Delegate API to PrimAdapters.
virtual void UpdateForTime(UsdPrim const &prim, SdfPath const &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, UsdImagingInstancerContext const *instancerContext=nullptr) const =0
Populates the cache for the given prim, time and requestedBits.
Token for efficient comparison, assignment, and hashing of known strings.
Represent a time value, which may be either numeric, holding a double value, or a sentinel value UsdT...
This class is used as a context object with global stage information, that gets passed down to dataso...
Base class for all PrimAdapters.
Represents a set of data source locators closed under descendancy.
virtual void TrackVariability(UsdPrim const &prim, SdfPath const &cachePath, HdDirtyBits *timeVaryingBits, UsdImagingInstancerContext const *instancerContext=nullptr) const =0
For the given prim, variability is detected and stored in timeVaryingBits.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
std::vector< TfToken > TfTokenVector
Convenience types.
A path value used to locate objects in layers or scenegraphs.
Object used by instancer prim adapters to pass along context about the instancer and instance prim to...
virtual HdDirtyBits ProcessPropertyChange(UsdPrim const &prim, SdfPath const &cachePath, TfToken const &propertyName)=0
Returns a bit mask of attributes to be updated, or HdChangeTracker::AllDirty if the entire prim must ...
virtual SdfPath Populate(UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=nullptr)=0
Called to populate the RenderIndex for this UsdPrim.
virtual USDIMAGING_API VtValue Get(UsdPrim const &prim, SdfPath const &cachePath, TfToken const &key, UsdTimeCode time, VtIntArray *outIndices) const
Gets the value of the parameter named key for the given prim (which has the given cache path) and giv...
virtual bool IsSupported(UsdImagingIndexProxy const *index) const
Returns true if the adapter can be populated into the target index.
Provides a container which may hold any type, and provides introspection and iteration over array typ...