HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
dataSourceGprim.h
Go to the documentation of this file.
1 //
2 // Copyright 2022 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_DATA_SOURCE_GPRIM_H
8 #define PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_GPRIM_H
9 
12 
15 
17 
18 ///
19 /// \class UsdImagingDataSourceGprim
20 ///
21 /// Data source representing a USD gprim. This is the common base for geometric
22 /// types and includes features such as materials and primvars.
23 ///
25 {
26 public:
28 
29  /// Returns the data source representing \p name, if valid.
30  ///
32  HdDataSourceBaseHandle Get(const TfToken &name) override;
33 
36  UsdPrim const& prim,
37  const TfToken &subprim,
38  const TfTokenVector &properties,
39  UsdImagingPropertyInvalidationType invalidationType);
40 
41 protected:
42 
43  /// Use to construct a new UsdImagingDataSourceGprim.
44  ///
45  /// \p sceneIndexPath is the path of this object in the scene index.
46  ///
47  /// \p usdPrim is the USD prim object that this data source represents.
48  ///
49  /// \p stageGlobals represents the context object for the UsdStage with
50  /// which to evaluate this attribute data source.
51  ///
52  /// Note: client code calls this via static New.
55  const SdfPath &sceneIndexPath,
56  UsdPrim usdPrim,
57  const UsdImagingDataSourceStageGlobals &stageGlobals);
58 
59 };
60 
62 
64 
65 #endif // PXR_USD_IMAGING_USD_IMAGING_DATA_SOURCE_GPRIM_H
HD_DECLARE_DATASOURCE_HANDLES(UsdImagingDataSourceGprim)
#define USDIMAGING_API
Definition: api.h:23
static USDIMAGING_API HdDataSourceLocatorSet Invalidate(UsdPrim const &prim, const TfToken &subprim, const TfTokenVector &properties, UsdImagingPropertyInvalidationType invalidationType)
Definition: token.h:70
USDIMAGING_API HdDataSourceBaseHandle Get(const TfToken &name) override
HD_DECLARE_DATASOURCE(UsdImagingDataSourceGprim)
Definition: prim.h:116
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:440
GLuint const GLchar * name
Definition: glcorearb.h:786
Definition: path.h:273
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
USDIMAGING_API UsdImagingDataSourceGprim(const SdfPath &sceneIndexPath, UsdPrim usdPrim, const UsdImagingDataSourceStageGlobals &stageGlobals)
UsdImagingPropertyInvalidationType
Definition: types.h:17