|
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 () |
| template<typename TOrthogonal , typename TSourceObject > | |
| void | onStateOrthogonalAllocation () |
| 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) |
| template<typename SmaccComponentType > | |
| void | requiresComponent (SmaccComponentType *&storage, ComponentRequirement requirementType=ComponentRequirement::SOFT) |
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 () |
| onEntry is executed in a new thread. However the current state cannot be left until the onEntry thread finishes. This flag can be checked from the onEntry thread to force finishing the thread. | |
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 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::introspection::demangleSymbol(), smacc2::ISmaccClientBehavior::getCurrentState(), smacc2::ISmaccClientBehavior::getLogger(), smacc2::ISmaccState::getOrthogonal(), smacc2::SmaccAsyncClientBehavior::onOrthogonalAllocation(), 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().