#include <AsyncMerger.hpp>
Public Types | |
typedef boost::shared_ptr < AsyncMergerBase > | Ptr |
Protected Member Functions | |
bool | allArrived () |
AsyncMergerBase () | |
void | checkArrived (const ros::TimerEvent &event) |
void | clearAll () |
void | copyFromVector (const auv_msgs::BodyForceReq::Ptr &topic, bool *axis, double *val) |
void | copyFromVector (const auv_msgs::BodyVelocityReq::Ptr &topic, bool *axis, double *val) |
void | copyToVector (const auv_msgs::BodyForceReq::ConstPtr &topic, bool *axis, double *val) |
void | copyToVector (const auv_msgs::BodyVelocityReq::ConstPtr &topic, bool *axis, double *val) |
void | handleRequester (const std::string &requester) |
virtual void | publishFinal ()=0 |
void | reset_axes () |
virtual | ~AsyncMergerBase () |
Protected Attributes | |
boost::mutex | cnt_mux |
ControllerMap | controllers |
ros::Subscriber | in |
ros::Time | lastAll |
ros::Publisher | loop_time |
ros::Publisher | out |
bool | outaxis [6] |
double | outval [6] |
ros::Timer | timer |
double | Ts |
Private Types | |
typedef std::map< std::string, bool > | ControllerMap |
Definition at line 56 of file AsyncMerger.hpp.
typedef std::map<std::string,bool> labust::control::AsyncMergerBase::ControllerMap [private] |
Definition at line 58 of file AsyncMerger.hpp.
typedef boost::shared_ptr<AsyncMergerBase> labust::control::AsyncMergerBase::Ptr |
Definition at line 60 of file AsyncMerger.hpp.
AsyncMergerBase::AsyncMergerBase | ( | ) | [protected] |
Main constructor.
Definition at line 45 of file AsyncMerger.cpp.
virtual labust::control::AsyncMergerBase::~AsyncMergerBase | ( | ) | [inline, protected, virtual] |
Main destructor.
Definition at line 69 of file AsyncMerger.hpp.
bool AsyncMergerBase::allArrived | ( | ) | [protected] |
Method to determine if all controller messages have arrived.
Definition at line 92 of file AsyncMerger.cpp.
void AsyncMergerBase::checkArrived | ( | const ros::TimerEvent & | event | ) | [protected] |
Check if all controllers arrived.
Definition at line 140 of file AsyncMerger.cpp.
void AsyncMergerBase::clearAll | ( | ) | [protected] |
Method clears all arrived flags.
Definition at line 104 of file AsyncMerger.cpp.
void AsyncMergerBase::copyFromVector | ( | const auv_msgs::BodyForceReq::Ptr & | topic, |
bool * | axis, | ||
double * | val | ||
) | [protected] |
Helper method to copy values from force topic to array.
Definition at line 71 of file AsyncMerger.cpp.
void AsyncMergerBase::copyFromVector | ( | const auv_msgs::BodyVelocityReq::Ptr & | topic, |
bool * | axis, | ||
double * | val | ||
) | [protected] |
Helper method to copy values from velocity topic to array.
Definition at line 85 of file AsyncMerger.cpp.
void AsyncMergerBase::copyToVector | ( | const auv_msgs::BodyForceReq::ConstPtr & | topic, |
bool * | axis, | ||
double * | val | ||
) | [protected] |
Helper method to copy values from force topic to array.
Definition at line 64 of file AsyncMerger.cpp.
void AsyncMergerBase::copyToVector | ( | const auv_msgs::BodyVelocityReq::ConstPtr & | topic, |
bool * | axis, | ||
double * | val | ||
) | [protected] |
Helper method to copy values from velocity topic to array.
Definition at line 78 of file AsyncMerger.cpp.
void AsyncMergerBase::handleRequester | ( | const std::string & | requester | ) | [protected] |
Method to handle new and old requesters.
Definition at line 128 of file AsyncMerger.cpp.
virtual void labust::control::AsyncMergerBase::publishFinal | ( | ) | [protected, pure virtual] |
The final publish.
Implemented in labust::control::AsyncMerger< Topic >.
void AsyncMergerBase::reset_axes | ( | ) | [protected] |
Helper method to reset axes.
Definition at line 55 of file AsyncMerger.cpp.
boost::mutex labust::control::AsyncMergerBase::cnt_mux [protected] |
Data mutex.
Definition at line 144 of file AsyncMerger.hpp.
The highlevel controller set.
Definition at line 115 of file AsyncMerger.hpp.
ros::Subscriber labust::control::AsyncMergerBase::in [protected] |
Subscriber to the Topic.
Definition at line 119 of file AsyncMerger.hpp.
ros::Time labust::control::AsyncMergerBase::lastAll [protected] |
Last time all arrived.
Definition at line 131 of file AsyncMerger.hpp.
Definition at line 123 of file AsyncMerger.hpp.
ros::Publisher labust::control::AsyncMergerBase::out [protected] |
Publisher on the merged Topic.
Definition at line 123 of file AsyncMerger.hpp.
bool labust::control::AsyncMergerBase::outaxis[6] [protected] |
The final disable_axis vector.
Definition at line 136 of file AsyncMerger.hpp.
double labust::control::AsyncMergerBase::outval[6] [protected] |
The final value vector.
Definition at line 140 of file AsyncMerger.hpp.
ros::Timer labust::control::AsyncMergerBase::timer [protected] |
The sync timer.
Definition at line 127 of file AsyncMerger.hpp.
double labust::control::AsyncMergerBase::Ts [protected] |
Sampling time.
Definition at line 148 of file AsyncMerger.hpp.