portalLightAdapter.h
Go to the documentation of this file.
1 //
2 // Copyright 2021 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_USD_IMAGING_USD_IMAGING_PORTAL_LIGHT_ADAPTER_H
8 #define PXR_USD_IMAGING_USD_IMAGING_PORTAL_LIGHT_ADAPTER_H
9 
11 
12 #include "pxr/pxr.h"
13 #include "pxr/usdImaging/usdImaging/api.h"
15 
16 PXR_NAMESPACE_OPEN_SCOPE
17 
18 
19 class UsdPrim;
20 
26 public:
28 
31  {}
32 
33  USDIMAGING_API
35 
36  USDIMAGING_API
37  virtual SdfPath Populate(UsdPrim const& prim,
38  UsdImagingIndexProxy* index,
39  UsdImagingInstancerContext const* instancerContext = NULL) override;
40 
41  USDIMAGING_API
42  virtual bool IsSupported(UsdImagingIndexProxy const* index) const override;
43 
44  // ---------------------------------------------------------------------- //
46  // ---------------------------------------------------------------------- //
47 
48  USDIMAGING_API
49  TfTokenVector GetImagingSubprims(UsdPrim const& prim) override;
50 
51  USDIMAGING_API
52  TfToken GetImagingSubprimType(UsdPrim const& prim, TfToken const& subprim)
53  override;
54 
55 protected:
56  virtual void _RemovePrim(SdfPath const& cachePath,
57  UsdImagingIndexProxy* index) final;
58 };
59 
60 
61 PXR_NAMESPACE_CLOSE_SCOPE
62 
63 #endif // PXR_USD_IMAGING_USD_IMAGING_PORTAL_LIGHT_ADAPTER_H
Base class for all lights.
Definition: lightAdapter.h:26
virtual USDIMAGING_API SdfPath Populate(UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=NULL) override
Called to populate the RenderIndex for this UsdPrim.
This proxy class exposes a subset of the private Delegate API to PrimAdapters.
Definition: indexProxy.h:30
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:80
virtual USDIMAGING_API bool IsSupported(UsdImagingIndexProxy const *index) const override
Returns true if the adapter can be populated into the target index.
Base class for all PrimAdapters.
Definition: primAdapter.h:52
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Definition: prim.h:116
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:489
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:280
Object used by instancer prim adapters to pass along context about the instancer and instance prim to...
Adapter class for lights of type PortalLight.