Ignition Rendering

API Reference

6.0.1
RenderTypes.hh
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 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 #ifndef IGNITION_RENDERING_RENDERTYPES_HH_
18 #define IGNITION_RENDERING_RENDERTYPES_HH_
19 
20 #include <memory>
21 #include <ignition/rendering/config.hh>
22 
23 
26 #define IGN_VISIBILITY_ALL 0x0FFFFFFF
27 
30 #define IGN_VISIBILITY_SELECTION 0x10000000
31 
34 #define IGN_VISIBILITY_GUI 0x00000001
35 
38 #define IGN_VISIBILITY_SELECTABLE 0x00000002
39 
40 namespace ignition
41 {
42  namespace rendering
43  {
44  inline namespace IGNITION_RENDERING_VERSION_NAMESPACE {
45  //
46  template <class T>
48 
49  class ArrowVisual;
50  class AxisVisual;
51  class BoundingBoxCamera;
52  class Camera;
53  class Capsule;
54  class COMVisual;
55  class DepthCamera;
56  class DirectionalLight;
57  class GaussianNoisePass;
58  class Geometry;
59  class GizmoVisual;
60  class GpuRays;
61  class Grid;
62  class Heightmap;
63  class Image;
64  class InertiaVisual;
65  class Light;
66  class LightVisual;
67  class JointVisual;
68  class LidarVisual;
69  class Light;
70  class Marker;
71  class Material;
72  class Mesh;
73  class Node;
74  class Object;
75  class ObjectFactory;
76  class ParticleEmitter;
77  class PointLight;
78  class RayQuery;
79  class RenderEngine;
80  class RenderPass;
81  class RenderPassSystem;
82  class RenderTarget;
83  class RenderTexture;
84  class RenderWindow;
85  class Scene;
86  class SegmentationCamera;
87  class Sensor;
88  class ShaderParams;
89  class SpotLight;
90  class SubMesh;
91  class Text;
92  class ThermalCamera;
93  class Visual;
94  class WireBox;
95 
99 
103 
107 
111 
115 
119 
123 
127 
131 
135 
139 
143 
147 
151 
155 
159 
163 
167 
171 
175 
179 
183 
187 
191 
195 
199 
203 
207 
211 
215 
219 
223 
227 
231 
235 
242 
246 
249 
253 
257 
261 
265 
269 
273 
277 
281 
285 
289 
293 
297 
301 
305 
309 
313 
317 
321 
325 
329 
333 
337 
341 
345 
349 
353 
357 
361 
365 
369 
373 
377 
381 
385 
389 
393 
397 
400 
404 
408 
412 
416  }
417  }
418 }
419 #endif
shared_ptr< COMVisual > COMVisualPtr
Shared pointer to COMVisual.
Definition: RenderTypes.hh:174
shared_ptr< Marker > MarkerPtr
Shared pointer to Marker.
Definition: RenderTypes.hh:190
shared_ptr< const Sensor > ConstSensorPtr
Definition: RenderTypes.hh:396
shared_ptr< RenderTexture > RenderTexturePtr
Shared pointer to RenderTexture.
Definition: RenderTypes.hh:234
Represents a arrow composite visual.
Definition: ArrowVisual.hh:31
shared_ptr< const LidarVisual > ConstLidarVisualPtr
Definition: RenderTypes.hh:336
shared_ptr< SubMesh > SubMeshPtr
Shared pointer to SubMesh.
Definition: RenderTypes.hh:256
Generate depth ray data.
Definition: GpuRays.hh:37
shared_ptr< Text > TextPtr
Shared pointer to Text.
Definition: RenderTypes.hh:260
shared_ptr< RenderTarget > RenderTargetPtr
Shared pointer to RenderTarget.
Definition: RenderTypes.hh:230
shared_ptr< Scene > ScenePtr
Shared pointer to Scene.
Definition: RenderTypes.hh:241
shared_ptr< const Object > ConstObjectPtr
Definition: RenderTypes.hh:352
shared_ptr< ArrowVisual > ArrowVisualPtr
Shared pointer to ArrowVisual.
Definition: RenderTypes.hh:98
A marker geometry class. The marker&#39;s visual appearance is based on the marker type specified...
Definition: Marker.hh:77
shared_ptr< JointVisual > JointVisualPtr
Shared pointer to JointVisual.
Definition: RenderTypes.hh:154
Represents a light visual.
Definition: LightVisual.hh:49
shared_ptr< const Geometry > ConstGeometryPtr
Definition: RenderTypes.hh:312
shared_ptr< LightVisual > LightVisualPtr
Shared pointer to Light.
Definition: RenderTypes.hh:178
A terrain defined by a heightfield.
Definition: Heightmap.hh:32
Represents a axis composite visual.
Definition: AxisVisual.hh:31
shared_ptr< const SpotLight > ConstSpotLightPtr
Definition: RenderTypes.hh:403
shared_ptr< WireBox > WireBoxPtr
Shared pointer to WireBox.
Definition: RenderTypes.hh:268
shared_ptr< const RenderPassSystem > ConstRenderPassSystemPtr
Definition: RenderTypes.hh:376
Thermal camera that produces temperature data. An object&#39;s temperature can be set through the Visual ...
Definition: ThermalCamera.hh:40
shared_ptr< SpotLight > SpotLightPtr
Shared pointer to SpotLight.
Definition: RenderTypes.hh:252
shared_ptr< const Light > ConstLightPtr
Definition: RenderTypes.hh:332
A class for creating and managing render passes.
Definition: RenderPassSystem.hh:56
shared_ptr< const JointVisual > ConstJointVisualPtr
Definition: RenderTypes.hh:320
shared_ptr< GaussianNoisePass > GaussianNoisePassPtr
Shared pointer to GaussianNoisePass.
Definition: RenderTypes.hh:134
Geometry for a capsule shape.
Definition: Capsule.hh:32
Represents a scene sensor. The most obvious example is a camera, but it can be anything that generate...
Definition: Sensor.hh:32
shared_ptr< const Heightmap > ConstHeightmapPtr
Definition: RenderTypes.hh:324
shared_ptr< const GizmoVisual > ConstGizmoVisualPtr
Definition: RenderTypes.hh:316
shared_ptr< const PointLight > ConstPointLightPtr
Definition: RenderTypes.hh:364
shared_ptr< DirectionalLight > DirectionalLightPtr
Shared pointer to DirectionalLight.
Definition: RenderTypes.hh:130
shared_ptr< ParticleEmitter > ParticleEmitterPtr
Shared pointer to ParticleEmitter.
Definition: RenderTypes.hh:210
A render pass can be added to a camera to affect how the scene is rendered. It can be used to add pos...
Definition: RenderPass.hh:34
Represents a joint visual.
Definition: JointVisual.hh:69
shared_ptr< Image > ImagePtr
Shared pointer to Image.
Definition: RenderTypes.hh:162
A render pass that applies Gaussian noise to the render target.
Definition: GaussianNoisePass.hh:35
shared_ptr< const Camera > ConstCameraPtr
Definition: RenderTypes.hh:280
shared_ptr< const BoundingBoxCamera > ConstBoundingBoxCameraPtr
Definition: RenderTypes.hh:292
Represents a billboard text geometry that is always facing the camera.
Definition: Text.hh:62
Definition: DepthCamera.hh:34
shared_ptr< AxisVisual > AxisVisualPtr
Shared pointer to AxisVisual.
Definition: RenderTypes.hh:102
Poseable Segmentation camera used for rendering the scene graph. This camera is designed to produce s...
Definition: SegmentationCamera.hh:51
shared_ptr< LidarVisual > LidarVisualPtr
Shared pointer to LidarVisual.
Definition: RenderTypes.hh:182
shared_ptr< Capsule > CapsulePtr
Shared pointer to Capsule.
Definition: RenderTypes.hh:146
Represents a single posable node in the scene graph.
Definition: Node.hh:51
shared_ptr< Geometry > GeometryPtr
Shared pointer to Geometry.
Definition: RenderTypes.hh:138
Represents a render-target to which cameras can render images.
Definition: RenderTarget.hh:37
shared_ptr< RenderPass > RenderPassPtr
Shared pointer to RenderPass.
Definition: RenderTypes.hh:222
shared_ptr< Light > LightPtr
Shared pointer to Light.
Definition: RenderTypes.hh:170
shared_ptr< const RayQuery > ConstRayQueryPtr
Definition: RenderTypes.hh:368
Represents a point light.
Definition: Light.hh:144
shared_ptr< const DepthCamera > ConstDepthCameraPtr
Definition: RenderTypes.hh:284
shared_ptr< ObjectFactory > ObjectFactoryPtr
Shared pointer to ObjectFactory.
Definition: RenderTypes.hh:206
shared_ptr< const RenderTarget > ConstRenderTargetPtr
Definition: RenderTypes.hh:380
shared_ptr< const Node > ConstNodePtr
Definition: RenderTypes.hh:348
shared_ptr< const ArrowVisual > ConstArrowVisualPtr
Definition: RenderTypes.hh:272
shared_ptr< Heightmap > HeightmapPtr
Shared pointer to Heightmap.
Definition: RenderTypes.hh:158
shared_ptr< const GaussianNoisePass > ConstGaussianNoisePass
Shared pointer to const GaussianNoisePass.
Definition: RenderTypes.hh:308
shared_ptr< RenderWindow > RenderWindowPtr
Shared pointer to RenderWindow.
Definition: RenderTypes.hh:238
shared_ptr< RayQuery > RayQueryPtr
Shared pointer to RayQuery.
Definition: RenderTypes.hh:218
shared_ptr< const RenderPass > ConstRenderPassPtr
Definition: RenderTypes.hh:372
shared_ptr< const Mesh > ConstMeshPtr
Definition: RenderTypes.hh:344
Encapsulates a raw image buffer and relevant properties.
Definition: Image.hh:36
shared_ptr< const Material > ConstMaterialPtr
Definition: RenderTypes.hh:340
Represents a center of mass visual.
Definition: COMVisual.hh:36
shared_ptr< const ShaderParams > ConstShaderParamsPtr
Shared pointer to const ShaderParams.
Definition: RenderTypes.hh:399
shared_ptr< const RenderWindow > ConstRenderWindowPtr
Definition: RenderTypes.hh:388
Manages a single scene-graph. This class updates scene-wide properties and holds the root scene node...
Definition: Scene.hh:49
shared_ptr< Grid > GridPtr
Shared pointer to Grid.
Definition: RenderTypes.hh:150
Represents a off-screen render-texture to which cameras can render images.
Definition: RenderTarget.hh:103
Class to manage a particle emitter.
Definition: ParticleEmitter.hh:58
shared_ptr< Object > ObjectPtr
Shared pointer to Object.
Definition: RenderTypes.hh:202
shared_ptr< const Image > ConstImagePtr
Definition: RenderTypes.hh:328
Poseable BoundingBox camera used for rendering bounding boxes of objects in the scene.
Definition: BoundingBoxCamera.hh:54
Posable camera used for rendering the scene graph.
Definition: Camera.hh:49
shared_ptr< const GpuRays > ConstGpuRaysPtr
Definition: RenderTypes.hh:300
A Ray Query class used for computing ray object intersections.
Definition: RayQuery.hh:63
shared_ptr< GpuRays > GpuRaysPtr
Shared pointer to GpuRays.
Definition: RenderTypes.hh:126
Represents a visual node in a scene graph. A Visual is the only node that can have Geometry and other...
Definition: Visual.hh:33
shared_ptr< const Scene > ConstScenePtr
Definition: RenderTypes.hh:392
shared_ptr< Camera > CameraPtr
Shared pointer to Camera.
Definition: RenderTypes.hh:106
shared_ptr< PointLight > PointLightPtr
Shared pointer to PointLight.
Definition: RenderTypes.hh:214
shared_ptr< ShaderParams > ShaderParamsPtr
Shared pointer to ShaderParams.
Definition: RenderTypes.hh:248
shared_ptr< RenderPassSystem > RenderPassSystemPtr
Shared pointer to RenderPassSystem.
Definition: RenderTypes.hh:226
shared_ptr< const ObjectFactory > ConstObjectFactoryPtr
Definition: RenderTypes.hh:356
Represents a light source in the scene graph.
Definition: Light.hh:32
Represents a spotlight.
Definition: Light.hh:153
Represents a on-screen render-window to which cameras can render images.
Definition: RenderTarget.hh:119
Represents a infinite directional light.
Definition: Light.hh:121
a map that holds params to be passed to a shader
Definition: ShaderParams.hh:38
shared_ptr< DepthCamera > DepthCameraPtr
Shared pointer to DepthCamera.
Definition: RenderTypes.hh:110
shared_ptr< Mesh > MeshPtr
Shared pointer to Mesh.
Definition: RenderTypes.hh:194
Represents a inertia visual.
Definition: InertiaVisual.hh:35
Represents a collection of mesh geometries.
Definition: Mesh.hh:37
shared_ptr< const ParticleEmitter > ConstParticleEmitterPtr
Definition: RenderTypes.hh:360
shared_ptr< const Text > ConstTextPtr
Definition: RenderTypes.hh:411
Represents a grid geometry drawn along the XY plane. If vertical cell count is specified then the gri...
Definition: Grid.hh:34
shared_ptr< Sensor > SensorPtr
Shared pointer to Sensor.
Definition: RenderTypes.hh:245
shared_ptr< Node > NodePtr
Shared pointer to Node.
Definition: RenderTypes.hh:198
An abstract interface to a concrete render-engine. A RenderEngine is responsible for initializing a r...
Definition: RenderEngine.hh:36
shared_ptr< Visual > VisualPtr
Shared pointer to Visual.
Definition: RenderTypes.hh:264
shared_ptr< SegmentationCamera > SegmentationCameraPtr
Shared pointer to Segmentation Camera.
Definition: RenderTypes.hh:122
shared_ptr< const AxisVisual > ConstAxisVisualPtr
Definition: RenderTypes.hh:276
shared_ptr< const ThermalCamera > ConstThermalCameraPtr
Definition: RenderTypes.hh:288
shared_ptr< const Visual > ConstVisualPtr
Definition: RenderTypes.hh:415
Represents a geometric shape to be rendered.
Definition: Geometry.hh:35
Represents a surface material of a Geometry.
Definition: Material.hh:47
shared_ptr< const SubMesh > ConstSubMeshPtr
Definition: RenderTypes.hh:407
Draws a wireframe box.
Definition: WireBox.hh:32
shared_ptr< Material > MaterialPtr
Shared pointer to Material.
Definition: RenderTypes.hh:186
shared_ptr< BoundingBoxCamera > BoundingBoxCameraPtr
Shared pointer to BoundingBoxCamera.
Definition: RenderTypes.hh:118
Represents an object present in the scene graph. This includes sub-meshes, materials, render targets, as well as posable nodes.
Definition: Object.hh:34
A gizmo that contains rotate, translate, and scale visuals.
Definition: GizmoVisual.hh:34
shared_ptr< GizmoVisual > GizmoVisualPtr
Shared pointer to GizmoVisual.
Definition: RenderTypes.hh:142
shared_ptr< const RenderTexture > ConstRenderTexturePtr
Definition: RenderTypes.hh:384
Represents a single mesh geometry.
Definition: Mesh.hh:135
shared_ptr< const DirectionalLight > ConstDirectionalLightPtr
Definition: RenderTypes.hh:304
shared_ptr< const SegmentationCamera > ConstSegmentationCameraPtr
Definition: RenderTypes.hh:296
shared_ptr< InertiaVisual > InertiaVisualPtr
Definition: RenderTypes.hh:166
A LidarVisual geometry class. The visual appearance is based on the type specified.
Definition: LidarVisual.hh:55
shared_ptr< ThermalCamera > ThermalCameraPtr
Shared pointer to ThermalCamera.
Definition: RenderTypes.hh:114