Gazebo Sim
API Reference
8.7.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
146
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
159
public:
void
LoadGlobalIlluminationVct
();
160
163
public: Q_INVOKABLE
void
UpdateDebugVisualizationMode
(
int
_mode);
164
168
public: Q_INVOKABLE
void
UpdateResolution
(
int
_axis, uint32_t _res);
169
173
public: Q_INVOKABLE
void
UpdateOctantCount
(
int
_axis, uint32_t _count);
174
178
public: Q_INVOKABLE
void
SetEnabled
(const
bool
_enabled);
179
182
public: Q_INVOKABLE
bool
Enabled
() const;
183
185
signals:
void
EnabledChanged
();
186
188
signals:
void
SettingsChanged
();
189
191
signals:
void
LightingChanged
();
192
194
signals:
void
DebugVisualizationModeChanged
();
195
198
public: Q_INVOKABLE
void
SetResolutionX
(const uint32_t _res);
199
202
public: Q_INVOKABLE uint32_t
ResolutionX
() const;
203
206
public: Q_INVOKABLE
void
SetResolutionY
(const uint32_t _res);
207
210
public: Q_INVOKABLE uint32_t
ResolutionY
() const;
211
214
public: Q_INVOKABLE
void
SetResolutionZ
(const uint32_t _res);
215
218
public: Q_INVOKABLE uint32_t
ResolutionZ
() const;
219
222
public: Q_INVOKABLE
void
SetOctantCountX
(const uint32_t _octantCount);
223
226
public: Q_INVOKABLE uint32_t
OctantCountX
() const;
227
230
public: Q_INVOKABLE
void
SetOctantCountY
(const uint32_t _octantCount);
231
234
public: Q_INVOKABLE uint32_t
OctantCountY
() const;
235
238
public: Q_INVOKABLE
void
SetOctantCountZ
(const uint32_t _octantCount);
239
242
public: Q_INVOKABLE uint32_t
OctantCountZ
() const;
243
246
public: Q_INVOKABLE
void
SetBounceCount
(const uint32_t _bounces);
247
250
public: Q_INVOKABLE uint32_t
BounceCount
() const;
251
254
public: Q_INVOKABLE
void
SetHighQuality
(const
bool
_quality);
255
258
public: Q_INVOKABLE
bool
HighQuality
() const;
259
262
public: Q_INVOKABLE
void
SetAnisotropic
(const
bool
_anisotropic);
263
266
public: Q_INVOKABLE
bool
Anisotropic
() const;
267
270
public: Q_INVOKABLE
void
SetConserveMemory
(const
bool
_conserveMemory);
271
274
public: Q_INVOKABLE
bool
ConserveMemory
() const;
275
279
public: Q_INVOKABLE
void
SetThinWallCounter
(const
float
_thinWallCounter);
280
283
public: Q_INVOKABLE
float
ThinWallCounter
() const;
284
287
public: Q_INVOKABLE
void
SetDebugVisualizationMode
(const uint32_t _visMode);
288
291
public: Q_INVOKABLE uint32_t
DebugVisualizationMode
() const;
292
295
private:
std
::unique_ptr<GlobalIlluminationVctPrivate> dataPtr;
296
};
297
}
298
}
299
}
300
#endif