HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
unitTestNullRenderDelegate.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 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_IMAGING_HD_UNIT_TEST_NULL_RENDER_DELEGATE_H
8 #define PXR_IMAGING_HD_UNIT_TEST_NULL_RENDER_DELEGATE_H
9 
10 #include "pxr/pxr.h"
13 
15 
17 {
18 public:
20  ~Hd_UnitTestNullRenderDelegate() override = default;
21 
22  HD_API
23  const TfTokenVector &GetSupportedRprimTypes() const override;
24  HD_API
25  const TfTokenVector &GetSupportedSprimTypes() const override;
26  HD_API
27  const TfTokenVector &GetSupportedBprimTypes() const override;
28  HD_API
29  HdRenderParam *GetRenderParam() const override;
30  HD_API
32 
33  ////////////////////////////////////////////////////////////////////////////
34  ///
35  /// Renderpass factory
36  ///
37  ////////////////////////////////////////////////////////////////////////////
38 
39  HD_API
41  HdRprimCollection const& collection) override;
42 
43  ////////////////////////////////////////////////////////////////////////////
44  ///
45  /// Instancer Factory
46  ///
47  ////////////////////////////////////////////////////////////////////////////
48 
49  HD_API
51  SdfPath const& id) override;
52 
53  HD_API
54  void DestroyInstancer(HdInstancer *instancer) override;
55 
56  ////////////////////////////////////////////////////////////////////////////
57  ///
58  /// Prim Factories
59  ///
60  ////////////////////////////////////////////////////////////////////////////
61 
62  HD_API
63  HdRprim *CreateRprim(TfToken const& typeId,
64  SdfPath const& rprimId) override;
65 
66  HD_API
67  void DestroyRprim(HdRprim *rPrim) override;
68 
69  HD_API
70  HdSprim *CreateSprim(TfToken const& typeId,
71  SdfPath const& sprimId) override;
72 
73  HD_API
74  HdSprim *CreateFallbackSprim(TfToken const& typeId) override;
75  HD_API
76  void DestroySprim(HdSprim *sprim) override;
77 
78  HD_API
79  HdBprim *CreateBprim(TfToken const& typeId,
80  SdfPath const& bprimId) override;
81 
82  HD_API
83  HdBprim *CreateFallbackBprim(TfToken const& typeId) override;
84 
85  HD_API
86  void DestroyBprim(HdBprim *bprim) override;
87 
88  ////////////////////////////////////////////////////////////////////////////
89  ///
90  /// Sync, Execute & Dispatch Hooks
91  ///
92  ////////////////////////////////////////////////////////////////////////////
93 
94  HD_API
95  void CommitResources(HdChangeTracker *tracker) override;
96 
97 
98  ////////////////////////////////////////////////////////////////////////////
99  ///
100  /// Commands API
101  ///
102  ////////////////////////////////////////////////////////////////////////////
103 
104  HD_API
106 
107  HD_API
108  bool InvokeCommand(
109  const TfToken &command,
110  const HdCommandArgs &args = HdCommandArgs()) override;
111 
112 private:
113  static const TfTokenVector SUPPORTED_RPRIM_TYPES;
114  static const TfTokenVector SUPPORTED_SPRIM_TYPES;
115  static const TfTokenVector SUPPORTED_BPRIM_TYPES;
116 
118  const Hd_UnitTestNullRenderDelegate &) = delete;
119  Hd_UnitTestNullRenderDelegate &operator =(
120  const Hd_UnitTestNullRenderDelegate &) = delete;
121 
122 };
123 
125 
126 #endif // PXR_IMAGING_HD_UNIT_TEST_NULL_RENDER_DELEGATE_H
HD_API HdSprim * CreateFallbackSprim(TfToken const &typeId) override
std::shared_ptr< class HdRenderPass > HdRenderPassSharedPtr
Definition: engine.h:24
~Hd_UnitTestNullRenderDelegate() override=default
std::shared_ptr< class HdResourceRegistry > HdResourceRegistrySharedPtr
HD_API HdResourceRegistrySharedPtr GetResourceRegistry() const override
HD_API void CommitResources(HdChangeTracker *tracker) override
HD_API HdRenderParam * GetRenderParam() const override
HD_API HdRenderPassSharedPtr CreateRenderPass(HdRenderIndex *index, HdRprimCollection const &collection) override
HD_API bool InvokeCommand(const TfToken &command, const HdCommandArgs &args=HdCommandArgs()) override
#define HD_API
Definition: api.h:23
HD_API HdSprim * CreateSprim(TfToken const &typeId, SdfPath const &sprimId) override
HD_API HdInstancer * CreateInstancer(HdSceneDelegate *delegate, SdfPath const &id) override
Definition: token.h:70
HD_API HdRprim * CreateRprim(TfToken const &typeId, SdfPath const &rprimId) override
Definition: rprim.h:37
HD_API void DestroyInstancer(HdInstancer *instancer) override
std::vector< HdCommandDescriptor > HdCommandDescriptors
Definition: command.h:91
HD_API void DestroyRprim(HdRprim *rPrim) override
HD_API const TfTokenVector & GetSupportedSprimTypes() const override
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:440
HD_API void DestroySprim(HdSprim *sprim) override
Definition: path.h:273
HD_API HdBprim * CreateBprim(TfToken const &typeId, SdfPath const &bprimId) override
HD_API const TfTokenVector & GetSupportedRprimTypes() const override
HD_API const TfTokenVector & GetSupportedBprimTypes() const override
HD_API HdCommandDescriptors GetCommandDescriptors() const override
Definition: sprim.h:34
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
VtDictionary HdCommandArgs
Definition: command.h:54
HD_API void DestroyBprim(HdBprim *bprim) override
GLuint index
Definition: glcorearb.h:786
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
Definition: bprim.h:39
**If you just want to fire and args
Definition: thread.h:618
HD_API HdBprim * CreateFallbackBprim(TfToken const &typeId) override