Scene.hh
Go to the documentation of this file.
1 /*
2  * Copyright 2019 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 SDF_SCENE_HH_
18 #define SDF_SCENE_HH_
19 
20 #include <ignition/math/Color.hh>
21 
22 #include "sdf/Element.hh"
23 #include "sdf/Types.hh"
24 #include "sdf/sdf_config.h"
25 #include "sdf/system_util.hh"
26 
27 namespace sdf
28 {
29  // Inline bracket to help doxygen filtering.
30  inline namespace SDF_VERSION_NAMESPACE {
31  //
32 
33  // Forward declarations.
34  class ScenePrivate;
35 
37  {
39  public: Scene();
40 
43  public: Scene(const Scene &_scene);
44 
47  public: Scene(Scene &&_scene) noexcept;
48 
50  public: ~Scene();
51 
55  public: Scene &operator=(const Scene &_scene);
56 
60  public: Scene &operator=(Scene &&_scene);
61 
68  public: Errors Load(ElementPtr _sdf);
69 
72  public: ignition::math::Color Ambient() const;
73 
76  public: void SetAmbient(const ignition::math::Color &_ambient);
77 
80  public: ignition::math::Color Background() const;
81 
84  public: void SetBackground(const ignition::math::Color &_background);
85 
88  public: bool Grid() const;
89 
92  public: void SetGrid(const bool _enabled);
93 
96  public: bool OriginVisual() const;
97 
100  public: void SetOriginVisual(const bool _enabled);
101 
104  public: bool Shadows() const;
105 
108  public: void SetShadows(const bool _shadows);
109 
114  public: sdf::ElementPtr Element() const;
115 
117  private: ScenePrivate *dataPtr = nullptr;
118  };
119  }
120 }
121 #endif
Definition: Scene.hh:37
void SetAmbient(const ignition::math::Color &_ambient)
Set the ambient color of the scene.
void SetGrid(const bool _enabled)
Set whether the grid should be enabled.
bool OriginVisual() const
Get whether origin visual is enabled.
bool Grid() const
Get whether grid is enabled.
bool Shadows() const
Get whether shadows are enabled.
Scene & operator=(const Scene &_scene)
Assignment operator.
Scene & operator=(Scene &&_scene)
Move assignment operator.
Scene(Scene &&_scene) noexcept
Move constructor.
~Scene()
Destructor.
void SetBackground(const ignition::math::Color &_background)
Set the background color of the scene.
ignition::math::Color Ambient() const
Get the ambient color of the scene.
Scene(const Scene &_scene)
Copy constructor.
Errors Load(ElementPtr _sdf)
Load the scene based on a element pointer.
sdf::ElementPtr Element() const
Get a pointer to the SDF element that was used during load.
ignition::math::Color Background() const
Get the background color of the scene.
void SetOriginVisual(const bool _enabled)
Set whether the origin visual should be enabled.
Scene()
Default constructor.
void SetShadows(const bool _shadows)
Set whether shadows should be enabled.
std::vector< Error > Errors
A vector of Error.
Definition: Types.hh:89
std::shared_ptr< Element > ElementPtr
Definition: Element.hh:53
namespace for Simulation Description Format parser
Definition: Actor.hh:33
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system_util.hh:48