17 #ifndef GZ_SIM_LIGHT_HH_
18 #define GZ_SIM_LIGHT_HH_
25 #include <gz/utils/ImplPtr.hh>
27 #include <gz/math/Angle.hh>
28 #include <gz/math/Color.hh>
29 #include <gz/math/Pose3.hh>
30 #include <gz/math/Vector3.hh>
32 #include "gz/sim/config.hh"
34 #include "gz/sim/Export.hh"
42 inline namespace GZ_SIM_VERSION_NAMESPACE {
87 public: std::optional<std::string>
Name(
96 public: std::optional<math::Pose3d>
Pose(
103 public: std::optional<std::string> Type(
110 public: std::optional<math::Color> DiffuseColor(
117 public: std::optional<math::Color> SpecularColor(
131 public: std::optional<double> Intensity(
138 public: std::optional<math::Vector3d> Direction(
146 public: std::optional<double> AttenuationRange(
154 public: std::optional<double> AttenuationConstant(
162 public: std::optional<double> AttenuationLinear(
170 public: std::optional<double> AttenuationQuadratic(
177 public: std::optional<math::Angle> SpotInnerAngle(
184 public: std::optional<math::Angle> SpotOuterAngle(
191 public: std::optional<double> SpotFalloff(
282 public: std::optional<sim::Entity> Parent(
286 GZ_UTILS_IMPL_PTR(dataPtr)