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.
This class exists to facilitate point cloud style instancing.
Definition instancer.h:108
The render index is part of the Hydra 1.0 API and is only used for emulation purposes so that HdScene...
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:281
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:52
std::vector< TfToken > TfTokenVector
Convenience types.
Definition token.h:440