Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
rostate_machine::EventClient Class Reference

#include <event_client.h>

Public Member Functions

 EventClient (ros::NodeHandle nh, ros::NodeHandle pnh, std::string client_namespace)
 
boost::optional< rostate_machine::State > getCurrentState ()
 
ros::Duration getCurrentStateDuration ()
 
boost::optional< rostate_machine::State > getPreviousState ()
 
void publishEvent (rostate_machine::Event event)
 
void registerCallback (std::function< boost::optional< rostate_machine::Event >(void)> func, std::string tag)
 
void run ()
 
void setEvent (rostate_machine::Event event)
 
 ~EventClient ()
 

Public Attributes

const std::string client_namespace
 

Private Member Functions

bool eventKeyFound (rostate_machine::Event event)
 
void loadXml ()
 
std::vector< std::string > onTransition ()
 
std::vector< std::string > split (const std::string &s, char delim)
 
void stateCallback (const rostate_machine::State::ConstPtr msg)
 

Private Attributes

std::vector< std::string > available_events_
 
ros::Subscriber current_state_sub_
 
std::string description_
 
ros::NodeHandle nh_
 
ros::NodeHandle pnh_
 
boost::circular_buffer< rostate_machine::State > state_buf_
 
ros::Time state_changed_timestamp_
 
std::vector< TagInfotag_info_
 
std::map< std::string, std::vector< std::function< boost::optional< rostate_machine::Event >void)> > > tagged_functions_
 
ros::Publisher trigger_event_pub_
 

Detailed Description

Definition at line 51 of file event_client.h.

Constructor & Destructor Documentation

rostate_machine::EventClient::EventClient ( ros::NodeHandle  nh,
ros::NodeHandle  pnh,
std::string  client_namespace 
)

Definition at line 16 of file event_client.cpp.

rostate_machine::EventClient::~EventClient ( )

Definition at line 32 of file event_client.cpp.

Member Function Documentation

bool rostate_machine::EventClient::eventKeyFound ( rostate_machine::Event  event)
private

Definition at line 190 of file event_client.cpp.

boost::optional< rostate_machine::State > rostate_machine::EventClient::getCurrentState ( )

Definition at line 61 of file event_client.cpp.

ros::Duration rostate_machine::EventClient::getCurrentStateDuration ( )

Definition at line 37 of file event_client.cpp.

boost::optional< rostate_machine::State > rostate_machine::EventClient::getPreviousState ( )

Definition at line 49 of file event_client.cpp.

void rostate_machine::EventClient::loadXml ( )
private

Definition at line 143 of file event_client.cpp.

std::vector< std::string > rostate_machine::EventClient::onTransition ( )
private

Definition at line 209 of file event_client.cpp.

void rostate_machine::EventClient::publishEvent ( rostate_machine::Event  event)

Definition at line 43 of file event_client.cpp.

void rostate_machine::EventClient::registerCallback ( std::function< boost::optional< rostate_machine::Event >(void)>  func,
std::string  tag 
)

Definition at line 203 of file event_client.cpp.

void rostate_machine::EventClient::run ( )

Definition at line 24 of file event_client.cpp.

void rostate_machine::EventClient::setEvent ( rostate_machine::Event  event)
inline

Definition at line 63 of file event_client.h.

std::vector< std::string > rostate_machine::EventClient::split ( const std::string &  s,
char  delim 
)
private

Definition at line 216 of file event_client.cpp.

void rostate_machine::EventClient::stateCallback ( const rostate_machine::State::ConstPtr  msg)
private

Definition at line 77 of file event_client.cpp.

Member Data Documentation

std::vector<std::string> rostate_machine::EventClient::available_events_
private

Definition at line 81 of file event_client.h.

const std::string rostate_machine::EventClient::client_namespace

Definition at line 59 of file event_client.h.

ros::Subscriber rostate_machine::EventClient::current_state_sub_
private

Definition at line 72 of file event_client.h.

std::string rostate_machine::EventClient::description_
private

Definition at line 75 of file event_client.h.

ros::NodeHandle rostate_machine::EventClient::nh_
private

Definition at line 67 of file event_client.h.

ros::NodeHandle rostate_machine::EventClient::pnh_
private

Definition at line 70 of file event_client.h.

boost::circular_buffer<rostate_machine::State> rostate_machine::EventClient::state_buf_
private

Definition at line 74 of file event_client.h.

ros::Time rostate_machine::EventClient::state_changed_timestamp_
private

Definition at line 83 of file event_client.h.

std::vector<TagInfo> rostate_machine::EventClient::tag_info_
private

Definition at line 80 of file event_client.h.

std::map<std::string, std::vector<std::function<boost::optional<rostate_machine::Event>void)> > > rostate_machine::EventClient::tagged_functions_
private

Definition at line 79 of file event_client.h.

ros::Publisher rostate_machine::EventClient::trigger_event_pub_
private

Definition at line 71 of file event_client.h.


The documentation for this class was generated from the following files:


rostate_machine
Author(s):
autogenerated on Wed Sep 4 2019 05:19:52