22 #include <ignition/math/Pose3.hh>    23 #include <ignition/math/Angle.hh>    28 #include "sdf/sdf_config.h"    34   inline namespace SDF_VERSION_NAMESPACE {
    39   struct PoseRelativeToGraph;
   102     public: 
void SetType(
const LightType _type);
   106     public: std::string Name() 
const;
   110     public: 
void SetName(
const std::string &_name) 
const;
   117     public: 
const ignition::math::Pose3d &RawPose() 
const;
   122     public: 
void SetRawPose(
const ignition::math::Pose3d &_pose);
   128     public: 
const std::string &PoseRelativeTo() 
const;
   134     public: 
void SetPoseRelativeTo(
const std::string &_frame);
   143     public: 
bool CastShadows() 
const;
   147     public: 
void SetCastShadows(
const bool _cast);
   153     public: ignition::math::Color Diffuse() 
const;
   159     public: 
void SetDiffuse(
const ignition::math::Color &_color) 
const;
   165     public: ignition::math::Color Specular() 
const;
   171     public: 
void SetSpecular(
const ignition::math::Color &_color) 
const;
   175     public: 
double AttenuationRange() 
const;
   179     public: 
void SetAttenuationRange(
const double _range);
   185     public: 
double LinearAttenuationFactor() 
const;
   191     public: 
void SetLinearAttenuationFactor(
const double _factor);
   197     public: 
double ConstantAttenuationFactor() 
const;
   203     public: 
void SetConstantAttenuationFactor(
const double _factor);
   208     public: 
double QuadraticAttenuationFactor() 
const;
   213     public: 
void SetQuadraticAttenuationFactor(
const double _factor);
   219     public: ignition::math::Vector3d Direction() 
const;
   224     public: 
void SetDirection(
const ignition::math::Vector3d  &_dir);
   229     public: ignition::math::Angle SpotInnerAngle() 
const;
   234     public: 
void SetSpotInnerAngle(
const ignition::math::Angle &_angle);
   239     public: ignition::math::Angle SpotOuterAngle() 
const;
   244     public: 
void SetSpotOuterAngle(
const ignition::math::Angle &_angle);
   251     public: 
double SpotFalloff() 
const;
   258     public: 
void SetSpotFalloff(
const double _falloff);
   268     private: 
void CopyFrom(
const Light &_light);
   274     private: 
void SetXmlParentName(
const std::string &_xmlParentName);
   280     private: 
void SetPoseRelativeToGraph(
   281         std::weak_ptr<const PoseRelativeToGraph> _graph);
   291     private: LightPrivate *dataPtr = 
nullptr;
 
class SDFORMAT_VISIBLE Element
Definition: Element.hh:49
Provides a description of a light source. 
Definition: Light.hh:62
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported. 
Definition: system_util.hh:48
SemanticPose is a data structure that can be used by different DOM objects to resolve poses on a Pose...
Definition: SemanticPose.hh:53
LightType
The set of light types. 
Definition: Light.hh:44
A directional light source. 
std::shared_ptr< Element > ElementPtr
Definition: Element.hh:53
namespace for Simulation Description Format parser 
Definition: Actor.hh:32
std::vector< Error > Errors
A vector of Error. 
Definition: Types.hh:95