Gazebo Sim
API Reference
9.0.0
insert_drive_file
Tutorials
library_books
Classes
toc
Namespaces
insert_drive_file
Files
launch
Gazebo Website
Index
List
Hierarchy
Members: All
Members: Functions
Members: Variables
Members: Typedefs
Members: Enumerations
Members: Enumerator
List
Members
Functions
Typedefs
Variables
Enumerations
Enumerator
src
gz-sim
src
gui
plugins
global_illumination_vct
GlobalIlluminationVct.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2022 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef GZ_SIM_GUI_GLOBALILLUMINATIONVCT_HH_
19
#define GZ_SIM_GUI_GLOBALILLUMINATIONVCT_HH_
20
21
#include <memory>
22
23
#include "
gz/sim/gui/GuiSystem.hh
"
24
#include "
gz/gui/qt.h
"
25
26
namespace
gz
27
{
28
namespace
sim
29
{
30
// Inline bracket to help doxygen filtering.
31
inline
namespace
GZ_SIM_VERSION_NAMESPACE
32
{
33
class
GlobalIlluminationVctPrivate;
34
53
class
GlobalIlluminationVct
:
public
gz::sim::GuiSystem
54
{
55
Q_OBJECT
56
59
Q_PROPERTY(
60
bool
enabled
61
READ
Enabled
62
WRITE
SetEnabled
63
NOTIFY
EnabledChanged
64
)
65
66
Q_PROPERTY(
67
int
resolutionX
68
READ
ResolutionX
69
WRITE
SetResolutionX
70
NOTIFY
SettingsChanged
71
)
72
Q_PROPERTY(
73
int
resolutionY
74
READ
ResolutionY
75
WRITE
SetResolutionY
76
NOTIFY
SettingsChanged
77
)
78
Q_PROPERTY(
79
int
resolutionZ
80
READ
ResolutionZ
81
WRITE
SetResolutionZ
82
NOTIFY
SettingsChanged
83
)
84
85
Q_PROPERTY(
86
int
octantCountX
87
READ
OctantCountX
88
WRITE
SetOctantCountX
89
NOTIFY
SettingsChanged
90
)
91
Q_PROPERTY(
92
int
octantCountY
93
READ
OctantCountY
94
WRITE
SetOctantCountY
95
NOTIFY
SettingsChanged
96
)
97
Q_PROPERTY(
98
int
octantCountZ
99
READ
OctantCountZ
100
WRITE
SetOctantCountZ
101
NOTIFY
SettingsChanged
102
)
103
104
Q_PROPERTY(
105
int
bounceCount
106
READ
BounceCount
107
WRITE
SetBounceCount
108
NOTIFY
LightingChanged
109
)
110
111
Q_PROPERTY(
112
bool
highQuality
113
READ
HighQuality
114
WRITE
SetHighQuality
115
NOTIFY
LightingChanged
116
)
117
118
Q_PROPERTY(
119
bool
anisotropic
120
READ
Anisotropic
121
WRITE
SetAnisotropic
122
NOTIFY
LightingChanged
123
)
124
125
Q_PROPERTY(
126
bool
conserveMemory
127
READ
ConserveMemory
128
WRITE
SetConserveMemory
129
NOTIFY
LightingChanged
130
)
131
132
Q_PROPERTY(
133
float
thinWallCounter
134
READ
ThinWallCounter
135
WRITE
SetThinWallCounter
136
NOTIFY
LightingChanged
137
)
138
139
Q_PROPERTY(
140
int
debugVisualizationMode
141
READ
DebugVisualizationMode
142
WRITE
SetDebugVisualizationMode
143
NOTIFY
DebugVisualizationModeChanged
144
)
145
147
public:
GlobalIlluminationVct
();
148
150
public: ~
GlobalIlluminationVct
() override;
151
152
// Documentation inherited
153
public:
void
LoadConfig
(const
tinyxml2
::XMLElement *_pluginElem) override;
154
155
// Documentation Inherited
156
public:
bool
eventFilter
(QObject *_obj, QEvent *_event) override;
157
160
public:
bool
LoadGlobalIlluminationVct
();
161
164
public: Q_INVOKABLE
void
UpdateDebugVisualizationMode
(
int
_mode);
165
169
public: Q_INVOKABLE
void
UpdateResolution
(
int
_axis, uint32_t _res);
170
174
public: Q_INVOKABLE
void
UpdateOctantCount
(
int
_axis, uint32_t _count);
175
179
public: Q_INVOKABLE
void
SetEnabled
(const
bool
_enabled);
180
183
public: Q_INVOKABLE
bool
Enabled
() const;
184
186
signals:
void
EnabledChanged
();
187
189
signals:
void
SettingsChanged
();
190
192
signals:
void
LightingChanged
();
193
195
signals:
void
DebugVisualizationModeChanged
();
196
199
public: Q_INVOKABLE
void
SetResolutionX
(const uint32_t _res);
200
203
public: Q_INVOKABLE uint32_t
ResolutionX
() const;
204
207
public: Q_INVOKABLE
void
SetResolutionY
(const uint32_t _res);
208
211
public: Q_INVOKABLE uint32_t
ResolutionY
() const;
212
215
public: Q_INVOKABLE
void
SetResolutionZ
(const uint32_t _res);
216
219
public: Q_INVOKABLE uint32_t
ResolutionZ
() const;
220
223
public: Q_INVOKABLE
void
SetOctantCountX
(const uint32_t _octantCount);
224
227
public: Q_INVOKABLE uint32_t
OctantCountX
() const;
228
231
public: Q_INVOKABLE
void
SetOctantCountY
(const uint32_t _octantCount);
232
235
public: Q_INVOKABLE uint32_t
OctantCountY
() const;
236
239
public: Q_INVOKABLE
void
SetOctantCountZ
(const uint32_t _octantCount);
240
243
public: Q_INVOKABLE uint32_t
OctantCountZ
() const;
244
247
public: Q_INVOKABLE
void
SetBounceCount
(const uint32_t _bounces);
248
251
public: Q_INVOKABLE uint32_t
BounceCount
() const;
252
255
public: Q_INVOKABLE
void
SetHighQuality
(const
bool
_quality);
256
259
public: Q_INVOKABLE
bool
HighQuality
() const;
260
263
public: Q_INVOKABLE
void
SetAnisotropic
(const
bool
_anisotropic);
264
267
public: Q_INVOKABLE
bool
Anisotropic
() const;
268
271
public: Q_INVOKABLE
void
SetConserveMemory
(const
bool
_conserveMemory);
272
275
public: Q_INVOKABLE
bool
ConserveMemory
() const;
276
280
public: Q_INVOKABLE
void
SetThinWallCounter
(const
float
_thinWallCounter);
281
284
public: Q_INVOKABLE
float
ThinWallCounter
() const;
285
288
public: Q_INVOKABLE
void
SetDebugVisualizationMode
(const uint32_t _visMode);
289
292
public: Q_INVOKABLE uint32_t
DebugVisualizationMode
() const;
293
296
private:
std
::unique_ptr<GlobalIlluminationVctPrivate> dataPtr;
297
};
298
}
299
}
300
}
301
#endif