SMACC
|
#include <smacc_client.h>
Public Member Functions | |
ISmaccClient () | |
virtual | ~ISmaccClient () |
virtual void | initialize () |
virtual std::string | getName () const |
template<typename EventType > | |
void | postEvent (const EventType &ev) |
template<typename EventType > | |
void | postEvent () |
template<typename TComponent > | |
TComponent * | getComponent () |
template<typename TComponent > | |
TComponent * | getComponent (std::string name) |
virtual smacc::introspection::TypeInfo::Ptr | getType () |
ISmaccStateMachine * | getStateMachine () |
template<typename TSmaccSignal , typename T > | |
void | connectSignal (TSmaccSignal &signal, void(T::*callback)(), T *object) |
template<typename SmaccClientType > | |
void | requiresClient (SmaccClientType *&storage) |
void | getComponents (std::vector< std::shared_ptr< ISmaccComponent > > &components) |
Protected Member Functions | |
template<typename TOrthogonal , typename TSourceObject > | |
void | onOrthogonalAllocation () |
template<typename SmaccComponentType , typename TOrthogonal , typename TClient , typename... TArgs> | |
SmaccComponentType * | createComponent (TArgs... targs) |
template<typename SmaccComponentType , typename TOrthogonal , typename TClient , typename... TArgs> | |
SmaccComponentType * | createNamedComponent (std::string name, TArgs... targs) |
void | setStateMachine (ISmaccStateMachine *stateMachine) |
void | setOrthogonal (ISmaccOrthogonal *orthogonal) |
Protected Attributes | |
std::map< ComponentKey, std::shared_ptr< smacc::ISmaccComponent > > | components_ |
Private Attributes | |
ISmaccStateMachine * | stateMachine_ |
ISmaccOrthogonal * | orthogonal_ |
Friends | |
class | ISmaccOrthogonal |
class | ISmaccComponent |
Definition at line 36 of file smacc_client.h.
smacc::ISmaccClient::ISmaccClient | ( | ) |
Definition at line 13 of file client.cpp.
|
virtual |
Definition at line 17 of file client.cpp.
void smacc::ISmaccClient::connectSignal | ( | TSmaccSignal & | signal, |
void(T::*)() | callback, | ||
T * | object | ||
) |
Definition at line 96 of file smacc_client_impl.h.
References smacc::ISmaccStateMachine::createSignalConnection(), and getStateMachine().
|
protected |
Definition at line 90 of file smacc_client_impl.h.
Referenced by smacc::ClientHandler< TOrthogonal, TClient >::createComponent(), and smacc::ISmaccComponent::createSiblingComponent().
|
protected |
Definition at line 57 of file smacc_client_impl.h.
References components_, and getStateMachine().
Referenced by smacc::ClientHandler< TOrthogonal, TClient >::createNamedComponent(), and smacc::ISmaccComponent::createSiblingNamedComponent().
TComponent * smacc::ISmaccClient::getComponent |
Definition at line 27 of file smacc_client_impl.h.
Referenced by cl_move_base_z::CbNavigateGlobalPosition::execute(), cl_move_base_z::CbNavigateGlobalPosition::onEntry(), cl_move_base_z::CbAbsoluteRotate::onEntry(), cl_move_base_z::CbNavigateBackwards::onEntry(), cl_move_base_z::CbNavigateForward::onEntry(), cl_move_base_z::CbNavigateNextWaypoint::onEntry(), cl_move_base_z::CbRotate::onEntry(), cl_move_base_z::CbUndoPathBackwards::onEntry(), cl_move_base_z::CbUndoPathBackwards2::onEntry(), cl_move_base_z::CbUndoPathBackwards::onExit(), cl_move_base_z::CbUndoPathBackwards2::onExit(), smacc::ISmaccComponent::requiresComponent(), and cl_move_base_z::WaypointNavigator::sendNextGoal().
TComponent * smacc::ISmaccClient::getComponent | ( | std::string | name | ) |
Definition at line 33 of file smacc_client_impl.h.
References components_.
void smacc::ISmaccClient::getComponents | ( | std::vector< std::shared_ptr< ISmaccComponent > > & | components | ) |
Definition at line 26 of file client.cpp.
References components_.
|
virtual |
Reimplemented in cl_move_base_z::ClMoveBaseZ.
Definition at line 34 of file client.cpp.
References smacc::introspection::demangleSymbol().
Referenced by smacc::client_bases::SmaccActionClientBase< ActionType >::cancelGoal(), smacc::client_bases::SmaccPublisherClient::configure(), smacc::client_bases::SmaccSubscriberClient< MessageType >::initialize(), smacc::client_bases::SmaccServiceClient< ServiceType >::initialize(), smacc::client_bases::SmaccServiceServerClient< TService >::initialize(), smacc::client_bases::SmaccActionClientBase< ActionType >::onResult(), and smacc::client_bases::SmaccActionClientBase< ActionType >::sendGoal().
|
inline |
Definition at line 51 of file smacc_client_impl.h.
References stateMachine_.
Referenced by connectSignal(), createNamedComponent(), smacc::client_bases::SmaccActionClientBase< ActionType >::onAborted(), smacc::client_bases::SmaccSubscriberClient< MessageType >::onFirstMessageReceived(), cl_keyboard::ClKeyboard::OnKeyPress(), smacc::client_bases::SmaccSubscriberClient< MessageType >::onMessageReceived(), cl_multirole_sensor::ClMultiroleSensor< MessageType >::onMessageTimeout(), cl_move_group_interface::ClMoveGroup::onMotionExecutionFailed(), cl_move_group_interface::ClMoveGroup::onMotionExecutionSuccedded(), smacc::client_bases::SmaccActionClientBase< ActionType >::onPreempted(), smacc::client_bases::SmaccActionClientBase< ActionType >::onRejected(), smacc::client_bases::SmaccServiceServerClient< TService >::onServiceRequestReceived(), smacc::client_bases::SmaccActionClientBase< ActionType >::onSucceeded(), and cl_ros_timer::ClRosTimer::onTimerTick().
|
virtual |
Definition at line 50 of file client.cpp.
References smacc::introspection::TypeInfo::getFromStdTypeInfo().
|
virtual |
Reimplemented in smacc::client_bases::SmaccSubscriberClient< MessageType >, smacc::client_bases::SmaccSubscriberClient< sensor_msgs::BatteryState >, smacc::client_bases::SmaccSubscriberClient< std_msgs::UInt16 >, smacc::client_bases::SmaccSubscriberClient< TMsg >, cl_ros_timer::ClRosTimer, smacc::client_bases::SmaccActionClientBase< ActionType >, smacc::client_bases::SmaccActionClientBase< move_base_msgs::MoveBaseAction >, smacc::client_bases::SmaccServiceClient< ServiceType >, smacc::client_bases::SmaccServiceServerClient< TService >, cl_keyboard::ClKeyboard, cl_move_base_z::ClMoveBaseZ, and cl_multirole_sensor::ClMultiroleSensor< MessageType >.
Definition at line 21 of file client.cpp.
|
inlineprotected |
Definition at line 75 of file smacc_client.h.
void smacc::ISmaccClient::postEvent |
Definition at line 21 of file smacc_client_impl.h.
References smacc::ISmaccStateMachine::postEvent(), and stateMachine_.
Referenced by smacc::client_bases::SmaccActionClientBase< ActionType >::onOrthogonalAllocation(), smacc::client_bases::SmaccSubscriberClient< MessageType >::onOrthogonalAllocation(), cl_multirole_sensor::ClMultiroleSensor< MessageType >::onOrthogonalAllocation(), and smacc::client_bases::SmaccActionClientBase< ActionType >::postResultEvent().
void smacc::ISmaccClient::postEvent | ( | const EventType & | ev | ) |
Definition at line 15 of file smacc_client_impl.h.
References smacc::ISmaccStateMachine::postEvent(), and stateMachine_.
void smacc::ISmaccClient::requiresClient | ( | SmaccClientType *& | storage | ) |
Definition at line 102 of file smacc_client_impl.h.
References orthogonal_, and smacc::ISmaccOrthogonal::requiresClient().
Referenced by smacc::ISmaccComponent::requiresClient().
|
protected |
Definition at line 45 of file client.cpp.
References orthogonal_.
|
protected |
Definition at line 40 of file client.cpp.
References stateMachine_.
|
friend |
Definition at line 97 of file smacc_client.h.
|
friend |
Definition at line 96 of file smacc_client.h.
|
protected |
Definition at line 78 of file smacc_client.h.
Referenced by createNamedComponent(), getComponent(), and getComponents().
|
private |
Definition at line 94 of file smacc_client.h.
Referenced by requiresClient(), and setOrthogonal().
|
private |
Definition at line 93 of file smacc_client.h.
Referenced by getStateMachine(), postEvent(), and setStateMachine().