SMACC2
|
#include <cb_sequence.hpp>
Public Member Functions | |
CbSequence () | |
void | onEntry () override |
void | onExit () override |
template<typename TOrthogonal , typename TBehavior , typename... Args> | |
CbSequence * | then (Args &&... args) |
Public Member Functions inherited from smacc2::SmaccAsyncClientBehavior | |
template<typename TOrthogonal , typename TSourceObject > | |
void | onOrthogonalAllocation () |
virtual | ~SmaccAsyncClientBehavior () |
template<typename TCallback , typename T > | |
boost::signals2::connection | onSuccess (TCallback callback, T *object) |
template<typename TCallback , typename T > | |
boost::signals2::connection | onFinished (TCallback callback, T *object) |
template<typename TCallback , typename T > | |
boost::signals2::connection | onFailure (TCallback callback, T *object) |
void | requestForceFinish () |
void | executeOnEntry () override |
void | executeOnExit () override |
void | waitOnEntryThread (bool requestFinish) |
template<typename TCallbackMethod , typename T > | |
boost::signals2::connection | onSuccess (TCallbackMethod callback, T *object) |
template<typename TCallbackMethod , typename T > | |
boost::signals2::connection | onFinished (TCallbackMethod callback, T *object) |
template<typename TCallbackMethod , typename T > | |
boost::signals2::connection | onFailure (TCallbackMethod callback, T *object) |
Public Member Functions inherited from smacc2::ISmaccClientBehavior | |
ISmaccClientBehavior () | |
virtual | ~ISmaccClientBehavior () |
ISmaccStateMachine * | getStateMachine () |
std::string | getName () const |
template<typename SmaccClientType > | |
void | requiresClient (SmaccClientType *&storage) |
template<typename SmaccComponentType > | |
void | requiresComponent (SmaccComponentType *&storage, bool throwExceptionIfNotExist=false) |
virtual void | onEntry () |
virtual void | onExit () |
virtual void | executeOnEntry () |
virtual void | executeOnExit () |
Private Member Functions | |
void | onSubNodeSuccess () |
void | onSubNodeAbort () |
void | recursiveConsumeNext () |
Private Attributes | |
std::list< std::function< std::shared_ptr< smacc2::SmaccAsyncClientBehavior >()> > | sequenceNodes_ |
boost::signals2::connection | conn_ |
boost::signals2::connection | conn2_ |
std::shared_ptr< smacc2::SmaccAsyncClientBehavior > | bh_ |
std::atomic< int > | consume_ {0} |
Additional Inherited Members | |
Protected Member Functions inherited from smacc2::SmaccAsyncClientBehavior | |
void | postSuccessEvent () |
void | postFailureEvent () |
virtual void | dispose () override |
bool | isShutdownRequested () |
Protected Member Functions inherited from smacc2::ISmaccClientBehavior | |
virtual void | runtimeConfigure () |
template<typename EventType > | |
void | postEvent (const EventType &ev) |
template<typename EventType > | |
void | postEvent () |
ISmaccState * | getCurrentState () |
virtual void | dispose () |
virtual rclcpp::Node::SharedPtr | getNode () const |
virtual rclcpp::Logger | getLogger () const |
Definition at line 31 of file cb_sequence.hpp.
smacc2::client_behaviors::CbSequence::CbSequence | ( | ) |
Definition at line 30 of file cb_sequence.cpp.
|
overridevirtual |
Reimplemented from smacc2::ISmaccClientBehavior.
Definition at line 60 of file cb_sequence.cpp.
References bh_, conn2_, conn_, consume_, smacc2::introspection::demangleType(), smacc2::ISmaccClientBehavior::getLogger(), smacc2::ISmaccClientBehavior::getNode(), smacc2::SmaccAsyncClientBehavior::isShutdownRequested(), smacc2::SmaccAsyncClientBehavior::postFailureEvent(), smacc2::SmaccAsyncClientBehavior::postSuccessEvent(), recursiveConsumeNext(), and sequenceNodes_.
|
inlineoverridevirtual |
Reimplemented from smacc2::ISmaccClientBehavior.
Definition at line 55 of file cb_sequence.hpp.
References sequenceNodes_.
|
private |
Definition at line 112 of file cb_sequence.cpp.
References conn2_, conn_, consume_, smacc2::ISmaccClientBehavior::getLogger(), smacc2::SmaccAsyncClientBehavior::postFailureEvent(), smacc2::SmaccAsyncClientBehavior::requestForceFinish(), and sequenceNodes_.
Referenced by recursiveConsumeNext().
|
private |
Definition at line 105 of file cb_sequence.cpp.
References consume_, smacc2::ISmaccClientBehavior::getLogger(), and sequenceNodes_.
Referenced by recursiveConsumeNext().
|
private |
Definition at line 32 of file cb_sequence.cpp.
References bh_, conn2_, conn_, smacc2::ISmaccClientBehavior::getLogger(), onSubNodeAbort(), onSubNodeSuccess(), and sequenceNodes_.
Referenced by onEntry().
|
inline |
Definition at line 58 of file cb_sequence.hpp.
References smacc2::ISmaccClientBehavior::getCurrentState(), smacc2::ISmaccClientBehavior::getLogger(), smacc2::ISmaccState::getOrthogonal(), and sequenceNodes_.
|
private |
Definition at line 88 of file cb_sequence.hpp.
Referenced by onEntry(), and recursiveConsumeNext().
|
private |
Definition at line 86 of file cb_sequence.hpp.
Referenced by onEntry(), onSubNodeAbort(), and recursiveConsumeNext().
|
private |
Definition at line 85 of file cb_sequence.hpp.
Referenced by onEntry(), onSubNodeAbort(), and recursiveConsumeNext().
|
private |
Definition at line 89 of file cb_sequence.hpp.
Referenced by onEntry(), onSubNodeAbort(), and onSubNodeSuccess().
|
private |
Definition at line 84 of file cb_sequence.hpp.
Referenced by onEntry(), onExit(), onSubNodeAbort(), onSubNodeSuccess(), recursiveConsumeNext(), and then().