Loading...
Searching...
No Matches
unitTestNullRenderDelegate.h
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"
11#include "pxr/imaging/hd/renderDelegate.h"
12#include "pxr/imaging/hd/instancer.h"
13
14PXR_NAMESPACE_OPEN_SCOPE
15
16class Hd_UnitTestNullRenderDelegate final : public HdRenderDelegate
17{
18public:
19 Hd_UnitTestNullRenderDelegate() = default;
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
31 HdResourceRegistrySharedPtr GetResourceRegistry() const override;
32
38
39 HD_API
40 HdRenderPassSharedPtr CreateRenderPass(HdRenderIndex *index,
41 HdRprimCollection const& collection) override;
42
48
49 HD_API
50 HdInstancer *CreateInstancer(HdSceneDelegate *delegate,
51 SdfPath const& id) override;
52
53 HD_API
54 void DestroyInstancer(HdInstancer *instancer) override;
55
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
93
94 HD_API
95 void CommitResources(HdChangeTracker *tracker) override;
96
97
103
104 HD_API
105 HdCommandDescriptors GetCommandDescriptors() const override;
106
107 HD_API
108 bool InvokeCommand(
109 const TfToken &command,
110 const HdCommandArgs &args = HdCommandArgs()) override;
111
112private:
113 static const TfTokenVector SUPPORTED_RPRIM_TYPES;
114 static const TfTokenVector SUPPORTED_SPRIM_TYPES;
115 static const TfTokenVector SUPPORTED_BPRIM_TYPES;
116
117 Hd_UnitTestNullRenderDelegate(
118 const Hd_UnitTestNullRenderDelegate &) = delete;
119 Hd_UnitTestNullRenderDelegate &operator =(
120 const Hd_UnitTestNullRenderDelegate &) = delete;
121
122};
123
124PXR_NAMESPACE_CLOSE_SCOPE
125
126#endif // PXR_IMAGING_HD_UNIT_TEST_NULL_RENDER_DELEGATE_H
Bprim (buffer prim) is a base class of managing a blob of data that is used to communicate between th...
Definition: bprim.h:40
Tracks changes from the HdSceneDelegate, providing invalidation cues to the render engine.
Definition: changeTracker.h:35
This class exists to facilitate point cloud style instancing.
Definition: instancer.h:108
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
Definition: renderIndex.h:105
The HdRenderParam is an opaque (to core Hydra) handle, to an object that is obtained from the render ...
A named, semantic collection of objects.
The render engine state for a given rprim from the scene graph.
Definition: rprim.h:38
Adapter class providing data exchange with the client scene graph.
Sprim (state prim) is a base class of managing state for non-drawable scene entity (e....
Definition: sprim.h:35
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:274
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:71
A map with string keys and VtValue values.
Definition: dictionary.h:43
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:440