#include <imarkers_plugin.h>
Public Types | |
typedef boost::shared_ptr < interactive_markers::InteractiveMarkerServer > | InteractiveMarkerServerPtr |
Public Member Functions | |
CIMarkersPlugin (const std::string &name) | |
Constructor. | |
virtual void | init (ros::NodeHandle &node_handle) |
Initialize plugin - called in server constructor. | |
virtual | ~CIMarkersPlugin () |
Destructor. | |
Protected Types | |
typedef std::pair< std::string, srs_env_model_msgs::PlaneDesc > | tNamedPlane |
Plane. | |
typedef std::map< int, tNamedPlane > | tPlanesMap |
Protected Member Functions | |
void | addPlaneSrvCall (const srs_env_model_msgs::PlaneDesc &plane, const std::string &name) |
Service helper - add plane. | |
std::string | getUniqueName () |
Get unique string (used as interactive marker name) | |
bool | insertPlaneCallback (srs_env_model::AddPlanes::Request &req, srs_env_model::AddPlanes::Response &res) |
Insert or modify plane array. | |
void | operatePlane (const srs_env_model_msgs::PlaneDesc &plane) |
Insert/modify/remove plane. | |
virtual void | publishInternal (const ros::Time ×tamp) |
Publish data - virtual function. | |
void | removePlaneSrvCall (const srs_env_model_msgs::PlaneDesc &plane, const std::string &name) |
Service helper - remove plane. | |
virtual bool | shouldPublish () |
Should plugin publish data? | |
Protected Attributes | |
ros::ServiceClient | m_addInteractivePlaneService |
Add plane interactive marker service. | |
bool | m_bUseExternalServer |
Use external server services? | |
tPlanesMap | m_dataPlanes |
std::string | m_IMarkersFrameId |
Used frame id (input data will be transformed to it) | |
srs_interaction_primitives::InteractiveMarkerServerPtr | m_imServer |
Interactive markers server pointer. | |
std::string | m_planesFrameId |
Planes frame id. | |
ros::ServiceClient | m_removeInteractiveMarkerService |
Remove object from the interactive markers server pointer. | |
std::string | m_serverTopicName |
Server topic name. | |
ros::ServiceServer | m_serviceInsertPlanes |
Insert some planes service. | |
long int | m_uniqueNameCounter |
Unique name counter. |
Definition at line 46 of file imarkers_plugin.h.
typedef boost::shared_ptr<interactive_markers::InteractiveMarkerServer> srs_env_model::CIMarkersPlugin::InteractiveMarkerServerPtr |
Definition at line 49 of file imarkers_plugin.h.
typedef std::pair< std::string, srs_env_model_msgs::PlaneDesc > srs_env_model::CIMarkersPlugin::tNamedPlane [protected] |
Plane.
Definition at line 120 of file imarkers_plugin.h.
typedef std::map< int, tNamedPlane > srs_env_model::CIMarkersPlugin::tPlanesMap [protected] |
Definition at line 121 of file imarkers_plugin.h.
srs_env_model::CIMarkersPlugin::CIMarkersPlugin | ( | const std::string & | name | ) |
Constructor.
Definition at line 35 of file imarkers_plugin.cpp.
srs_env_model::CIMarkersPlugin::~CIMarkersPlugin | ( | ) | [virtual] |
Destructor.
Definition at line 44 of file imarkers_plugin.cpp.
void srs_env_model::CIMarkersPlugin::addPlaneSrvCall | ( | const srs_env_model_msgs::PlaneDesc & | plane, |
const std::string & | name | ||
) | [protected] |
Service helper - add plane.
plane | Added plane |
Definition at line 205 of file imarkers_plugin.cpp.
std::string srs_env_model::CIMarkersPlugin::getUniqueName | ( | ) | [protected] |
Get unique string (used as interactive marker name)
Definition at line 277 of file imarkers_plugin.cpp.
void srs_env_model::CIMarkersPlugin::init | ( | ros::NodeHandle & | node_handle | ) | [virtual] |
Initialize plugin - called in server constructor.
Reimplemented from srs_env_model::CServerPluginBase.
Definition at line 53 of file imarkers_plugin.cpp.
bool srs_env_model::CIMarkersPlugin::insertPlaneCallback | ( | srs_env_model::AddPlanes::Request & | req, |
srs_env_model::AddPlanes::Response & | res | ||
) | [protected] |
Insert or modify plane array.
pa | Array of planes |
Definition at line 129 of file imarkers_plugin.cpp.
void srs_env_model::CIMarkersPlugin::operatePlane | ( | const srs_env_model_msgs::PlaneDesc & | plane | ) | [protected] |
Insert/modify/remove plane.
plane | Plane |
Definition at line 152 of file imarkers_plugin.cpp.
virtual void srs_env_model::CIMarkersPlugin::publishInternal | ( | const ros::Time & | timestamp | ) | [inline, protected, virtual] |
Publish data - virtual function.
Implements srs_env_model::CServerPluginBase.
Definition at line 100 of file imarkers_plugin.h.
void srs_env_model::CIMarkersPlugin::removePlaneSrvCall | ( | const srs_env_model_msgs::PlaneDesc & | plane, |
const std::string & | name | ||
) | [protected] |
Service helper - remove plane.
plane | Added plane |
Definition at line 253 of file imarkers_plugin.cpp.
virtual bool srs_env_model::CIMarkersPlugin::shouldPublish | ( | ) | [inline, protected, virtual] |
Should plugin publish data?
Implements srs_env_model::CServerPluginBase.
Definition at line 97 of file imarkers_plugin.h.
Add plane interactive marker service.
Definition at line 110 of file imarkers_plugin.h.
Use external server services?
Definition at line 134 of file imarkers_plugin.h.
Definition at line 122 of file imarkers_plugin.h.
std::string srs_env_model::CIMarkersPlugin::m_IMarkersFrameId [protected] |
Used frame id (input data will be transformed to it)
Definition at line 113 of file imarkers_plugin.h.
srs_interaction_primitives::InteractiveMarkerServerPtr srs_env_model::CIMarkersPlugin::m_imServer [protected] |
Interactive markers server pointer.
Definition at line 116 of file imarkers_plugin.h.
std::string srs_env_model::CIMarkersPlugin::m_planesFrameId [protected] |
Planes frame id.
Definition at line 125 of file imarkers_plugin.h.
Remove object from the interactive markers server pointer.
Definition at line 107 of file imarkers_plugin.h.
std::string srs_env_model::CIMarkersPlugin::m_serverTopicName [protected] |
Server topic name.
Definition at line 128 of file imarkers_plugin.h.
Insert some planes service.
Definition at line 104 of file imarkers_plugin.h.
long int srs_env_model::CIMarkersPlugin::m_uniqueNameCounter [protected] |
Unique name counter.
Definition at line 131 of file imarkers_plugin.h.