pluginLightAdapter.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_PLUGIN_LIGHT_ADAPTER_H
8 #define PXR_USD_IMAGING_USD_IMAGING_PLUGIN_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  // ---------------------------------------------------------------------- //
38  // ---------------------------------------------------------------------- //
39 
40  USDIMAGING_API
41  TfTokenVector GetImagingSubprims(UsdPrim const& prim) override;
42 
43  USDIMAGING_API
44  TfToken GetImagingSubprimType(UsdPrim const& prim, TfToken const& subprim)
45  override;
46 
47  // ---------------------------------------------------------------------- //
48 
49  USDIMAGING_API
50  SdfPath Populate(UsdPrim const& prim,
51  UsdImagingIndexProxy* index,
52  UsdImagingInstancerContext const* instancerContext = NULL) override;
53 
54  USDIMAGING_API
55  bool IsSupported(UsdImagingIndexProxy const* index) const override;
56 
57 protected:
58  void _RemovePrim(SdfPath const& cachePath,
59  UsdImagingIndexProxy* index) final;
60 
61 };
62 
63 
64 PXR_NAMESPACE_CLOSE_SCOPE
65 
66 #endif // PXR_USD_IMAGING_USD_IMAGING_PLUGIN_LIGHT_ADAPTER_H
Base class for all lights.
Definition: lightAdapter.h:26
This proxy class exposes a subset of the private Delegate API to PrimAdapters.
Definition: indexProxy.h:30
USDIMAGING_API bool IsSupported(UsdImagingIndexProxy const *index) const override
Returns true if the adapter can be populated into the target index.
USDIMAGING_API SdfPath Populate(UsdPrim const &prim, UsdImagingIndexProxy *index, UsdImagingInstancerContext const *instancerContext=NULL) override
Called to populate the RenderIndex for this UsdPrim.
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:80
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 PluginLight.