|
SMACC2
|
#include <smacc_orthogonal.hpp>


Public Member Functions | |
| void | setStateMachine (ISmaccStateMachine *value) |
| ISmaccStateMachine * | getStateMachine () |
| void | initState (ISmaccState *state) |
| void | addClientBehavior (std::shared_ptr< smacc2::ISmaccClientBehavior > clientBehavior) |
| void | runtimeConfigure () |
| void | onEntry () |
| void | onExit () |
| void | onDispose () |
| virtual std::string | getName () const |
| template<typename SmaccComponentType > | |
| void | requiresComponent (SmaccComponentType *&storage) |
| template<typename SmaccClientType > | |
| bool | requiresClient (SmaccClientType *&storage) |
| const std::vector< std::shared_ptr< smacc2::ISmaccClient > > & | getClients () |
| const std::vector< std::vector< std::shared_ptr< smacc2::ISmaccClientBehavior > > > & | getClientBehaviors () const |
| template<typename T > | |
| void | setGlobalSMData (std::string name, T value) |
| template<typename T > | |
| bool | getGlobalSMData (std::string name, T &ret) |
| template<typename TClientBehavior > | |
| TClientBehavior * | getClientBehavior (int index=0) |
| rclcpp::Node::SharedPtr | getNode () |
| rclcpp::Logger | getLogger () |
Protected Member Functions | |
| virtual void | onInitialize () |
| void | initializeClients () |
| template<typename TOrthogonal , typename TClient > | |
| void | assignClientToOrthogonal (TClient *client) |
Protected Attributes | |
| std::vector< std::shared_ptr< smacc2::ISmaccClient > > | clients_ |
Private Attributes | |
| ISmaccStateMachine * | stateMachine_ |
| std::vector< std::vector< std::shared_ptr< smacc2::ISmaccClientBehavior > > > | clientBehaviors_ |
| std::mutex | mutex_ |
Friends | |
| class | ISmaccStateMachine |
Definition at line 27 of file smacc_orthogonal.hpp.
| void smacc2::ISmaccOrthogonal::addClientBehavior | ( | std::shared_ptr< smacc2::ISmaccClientBehavior > | clientBehavior | ) |
Definition at line 49 of file orthogonal.cpp.
References clientBehaviors_, getLogger(), getName(), getStateMachine(), and mutex_.

|
protected |
Definition at line 82 of file smacc_orthogonal_impl.hpp.
References getStateMachine().

| TClientBehavior * smacc2::ISmaccOrthogonal::getClientBehavior | ( | int | index = 0 | ) |
Definition at line 91 of file smacc_orthogonal_impl.hpp.
References clientBehaviors_.
|
inline |
Definition at line 114 of file smacc_orthogonal_impl.hpp.
References clientBehaviors_.
|
inline |
Definition at line 108 of file smacc_orthogonal_impl.hpp.
References clients_.
| bool smacc2::ISmaccOrthogonal::getGlobalSMData | ( | std::string | name, |
| T & | ret | ||
| ) |
Definition at line 126 of file smacc_orthogonal_impl.hpp.
References smacc2::ISmaccStateMachine::getGlobalSMData(), and getStateMachine().

|
inline |
Definition at line 69 of file smacc_orthogonal.hpp.
References getNode().
Referenced by addClientBehavior(), smacc2::Orthogonal< TOrthogonal >::createClient(), initState(), onEntry(), onExit(), requiresClient(), requiresComponent(), and runtimeConfigure().


|
virtual |
Definition at line 81 of file orthogonal.cpp.
References smacc2::introspection::demangleSymbol().
Referenced by addClientBehavior(), initState(), and runtimeConfigure().


| rclcpp::Node::SharedPtr smacc2::ISmaccOrthogonal::getNode | ( | ) |
Definition at line 47 of file orthogonal.cpp.
References smacc2::ISmaccStateMachine::getNode(), and stateMachine_.
Referenced by getLogger().


|
inline |
Definition at line 132 of file smacc_orthogonal_impl.hpp.
References stateMachine_.
Referenced by addClientBehavior(), assignClientToOrthogonal(), getGlobalSMData(), onDispose(), requiresClient(), and setGlobalSMData().

|
protected |
Definition at line 39 of file orthogonal.cpp.
References clients_.
Referenced by setStateMachine().

| void smacc2::ISmaccOrthogonal::initState | ( | ISmaccState * | state | ) |
Definition at line 73 of file orthogonal.cpp.
References clientBehaviors_, smacc2::ISmaccState::getClassName(), getLogger(), and getName().

| void smacc2::ISmaccOrthogonal::onDispose | ( | ) |
Definition at line 165 of file orthogonal.cpp.
References clientBehaviors_, smacc2::ISmaccStateMachine::disconnectSmaccSignalObject(), and getStateMachine().

| void smacc2::ISmaccOrthogonal::onEntry | ( | ) |
Definition at line 97 of file orthogonal.cpp.
References cbName, clientBehaviors_, getLogger(), mutex_, orthogonalName, smacc2_client_behavior_on_entry_end, smacc2_client_behavior_on_entry_start, statename, and TRACEPOINT().

| void smacc2::ISmaccOrthogonal::onExit | ( | ) |
Definition at line 133 of file orthogonal.cpp.
References cbName, clientBehaviors_, getLogger(), mutex_, orthogonalName, smacc2_client_behavior_on_exit_end, smacc2_client_behavior_on_exit_start, statename, and TRACEPOINT().

|
protectedvirtual |
Definition at line 71 of file orthogonal.cpp.
Referenced by setStateMachine().

| bool smacc2::ISmaccOrthogonal::requiresClient | ( | SmaccClientType *& | storage | ) |
Definition at line 29 of file smacc_orthogonal_impl.hpp.
References clients_, getLogger(), and getStateMachine().
Referenced by smacc2::ISmaccClient::requiresClient(), and smacc2::ISmaccClientBehavior::requiresClient().


| void smacc2::ISmaccOrthogonal::requiresComponent | ( | SmaccComponentType *& | storage | ) |
Definition at line 67 of file smacc_orthogonal_impl.hpp.
References getLogger(), smacc2::ISmaccStateMachine::requiresComponent(), and stateMachine_.

| void smacc2::ISmaccOrthogonal::runtimeConfigure | ( | ) |
Definition at line 83 of file orthogonal.cpp.
References clientBehaviors_, getLogger(), getName(), and mutex_.

| void smacc2::ISmaccOrthogonal::setGlobalSMData | ( | std::string | name, |
| T | value | ||
| ) |
Definition at line 120 of file smacc_orthogonal_impl.hpp.
References getStateMachine(), and smacc2::ISmaccStateMachine::setGlobalSMData().

| void smacc2::ISmaccOrthogonal::setStateMachine | ( | ISmaccStateMachine * | value | ) |
Definition at line 32 of file orthogonal.cpp.
References initializeClients(), onInitialize(), and stateMachine_.

|
friend |
Definition at line 85 of file smacc_orthogonal.hpp.
|
private |
Definition at line 84 of file smacc_orthogonal.hpp.
Referenced by addClientBehavior(), getClientBehavior(), getClientBehaviors(), initState(), onDispose(), onEntry(), onExit(), and runtimeConfigure().
|
protected |
Definition at line 79 of file smacc_orthogonal.hpp.
Referenced by smacc2::Orthogonal< TOrthogonal >::createClient(), getClients(), initializeClients(), and requiresClient().
|
private |
Definition at line 87 of file smacc_orthogonal.hpp.
Referenced by addClientBehavior(), onEntry(), onExit(), and runtimeConfigure().
|
private |
Definition at line 82 of file smacc_orthogonal.hpp.
Referenced by getNode(), getStateMachine(), requiresComponent(), and setStateMachine().