HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
geomSubsetAdapter.h
Go to the documentation of this file.
1 //
2 // Copyright 2023 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_GEOM_SUBSET_ADAPTER_H
8 #define PXR_USD_IMAGING_USD_IMAGING_GEOM_SUBSET_ADAPTER_H
9 
13 
16 #include "pxr/imaging/hd/types.h"
17 
18 #include "pxr/usd/sdf/path.h"
19 #include "pxr/usd/usd/timeCode.h"
20 
21 #include "pxr/base/tf/token.h"
22 
23 #include "pxr/pxr.h"
24 
26 
28  : public UsdImagingPrimAdapter
29 {
30 public:
32 
34  : BaseAdapter()
35  { }
36 
39 
40  // ---------------------------------------------------------------------- //
41  /// \name Scene Index Support
42  // ---------------------------------------------------------------------- //
43 
45  TfTokenVector GetImagingSubprims(const UsdPrim& prim) override;
46 
49  const UsdPrim& prim,
50  const TfToken& subprim) override;
51 
53  HdContainerDataSourceHandle GetImagingSubprimData(
54  const UsdPrim& prim,
55  const TfToken& subprim,
56  const UsdImagingDataSourceStageGlobals& stageGlobals) override;
57 
60  const UsdPrim& prim,
61  const TfToken& subprim,
62  const TfTokenVector& properties,
63  UsdImagingPropertyInvalidationType invalidationType) override;
64 
65  // ---------------------------------------------------------------------- //
66  /// \name Overrides for Pure Virtual Legacy Methods
67  // ---------------------------------------------------------------------- //
68 
71  const UsdPrim& prim,
73  const UsdImagingInstancerContext* instancerCtx = nullptr) override;
74 
77  const UsdPrim& prim,
78  const SdfPath& cachePath,
79  HdDirtyBits* timeVaryingBits,
80  const UsdImagingInstancerContext* instancerCtx = nullptr) const override
81  { }
82 
85  const UsdPrim& prim,
86  const SdfPath& cachePath,
88  HdDirtyBits requestedBits,
89  const UsdImagingInstancerContext* instancerCtx = nullptr) const override
90  { }
91 
94  const UsdPrim& prim,
95  const SdfPath& cachePath,
96  const TfToken& propertyName) override;
97 
99  void MarkDirty(
100  const UsdPrim& prim,
101  const SdfPath& cachePath,
102  HdDirtyBits dirty,
103  UsdImagingIndexProxy* index) override
104  { }
105 
106 protected:
109  const SdfPath& cachePath,
110  UsdImagingIndexProxy* index) override
111  { }
112 };
113 
115 
116 #endif // PXR_USD_IMAGING_USD_IMAGING_GEOM_SUBSET_ADAPTER_H
#define USDIMAGING_API
Definition: api.h:23
GT_API const UT_StringHolder time
uint32_t HdDirtyBits
Definition: types.h:143
USDIMAGING_API TfTokenVector GetImagingSubprims(const UsdPrim &prim) override
USDIMAGING_API ~UsdImagingGeomSubsetAdapter() override
USDIMAGING_API void MarkDirty(const UsdPrim &prim, const SdfPath &cachePath, HdDirtyBits dirty, UsdImagingIndexProxy *index) override
Definition: token.h:70
USDIMAGING_API void TrackVariability(const UsdPrim &prim, const SdfPath &cachePath, HdDirtyBits *timeVaryingBits, const UsdImagingInstancerContext *instancerCtx=nullptr) const override
Definition: prim.h:116
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:440
Definition: path.h:273
USDIMAGING_API HdContainerDataSourceHandle GetImagingSubprimData(const UsdPrim &prim, const TfToken &subprim, const UsdImagingDataSourceStageGlobals &stageGlobals) override
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
USDIMAGING_API HdDirtyBits ProcessPropertyChange(const UsdPrim &prim, const SdfPath &cachePath, const TfToken &propertyName) override
GLuint index
Definition: glcorearb.h:786
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
USDIMAGING_API HdDataSourceLocatorSet InvalidateImagingSubprim(const UsdPrim &prim, const TfToken &subprim, const TfTokenVector &properties, UsdImagingPropertyInvalidationType invalidationType) override
USDIMAGING_API SdfPath Populate(const UsdPrim &prim, UsdImagingIndexProxy *index, const UsdImagingInstancerContext *instancerCtx=nullptr) override
USDIMAGING_API void UpdateForTime(const UsdPrim &prim, const SdfPath &cachePath, UsdTimeCode time, HdDirtyBits requestedBits, const UsdImagingInstancerContext *instancerCtx=nullptr) const override
USDIMAGING_API void _RemovePrim(const SdfPath &cachePath, UsdImagingIndexProxy *index) override
Returns whether custom shading of prims is enabled.
USDIMAGING_API TfToken GetImagingSubprimType(const UsdPrim &prim, const TfToken &subprim) override
UsdImagingPropertyInvalidationType
Definition: types.h:17