22#ifndef GAZEBO_SMACC_PLUGINS_LEDPLUGIN_HH_
23#define GAZEBO_SMACC_PLUGINS_LEDPLUGIN_HH_
27#include "gazebo/common/Plugin.hh"
28#include "gazebo/physics/physics.hh"
35 class LedSettingPrivate;
42 const sdf::ElementPtr &_sdf,
43 const gazebo::physics::ModelPtr &_model,
44 const gazebo::common::Time &_currentTime,
45 gazebo_ros::Node::SharedPtr rosnode);
52 public:
virtual void InitPubVisual(
53 const gazebo::transport::PublisherPtr &_pubVisual)
final;
56 protected:
virtual void Flash();
59 protected:
virtual void Dim();
62 private: std::unique_ptr<LedSettingPrivate>
dataPtr;
115 protected:
virtual std::shared_ptr<FlashLightSetting> CreateSetting(
116 const sdf::ElementPtr &_sdf,
117 const gazebo::physics::ModelPtr &_model,
118 const gazebo::common::Time &_currentTime,
119 gazebo_ros::Node::SharedPtr node);
122 protected:
virtual void InitSettingBySpecificData(
123 std::shared_ptr<FlashLightSetting> &_setting);
126 private: std::unique_ptr<LedPluginPrivate>
dataPtr;
Internal data class to hold individual flash light settings. A setting for each flash light is separa...
A plugin that blinks light and visual elements in a model. In addition to the features of the base pl...
std::unique_ptr< LedPluginPrivate > dataPtr
Pointer to private data.
Internal data class to hold individual LED light settings.
std::unique_ptr< LedSettingPrivate > dataPtr
Pointer to private data.