SMACC2
Public Types | Public Member Functions | Static Public Member Functions | List of all members
sm_aws_warehouse_navigation::StStartNavigation Struct Reference

#include <st_start_navigation.hpp>

Inheritance diagram for sm_aws_warehouse_navigation::StStartNavigation:
Inheritance graph
Collaboration diagram for sm_aws_warehouse_navigation::StStartNavigation:
Collaboration graph

Public Types

typedef mpl::list< Transition< EvCbSuccess< CbWaitNav2Nodes, OrNavigation >, StInitialNavigateForward, SUCCESS > > reactions
 
- Public Types inherited from smacc2::SmaccState< StStartNavigation, SmAwsWarehouseNavigation >
typedef SmAwsWarehouseNavigation TContext
 
typedef Context::inner_context_type context_type
 
typedef context_type::state_iterator state_iterator
 
typedef mpl::list<> LastDeepState
 
typedef base_type::outermost_context_base_type outermost_context_base_type
 
typedef base_type::inner_context_ptr_type inner_context_ptr_type
 
typedef base_type::context_ptr_type context_ptr_type
 
typedef base_type::inner_initial_list inner_initial_list
 

Public Member Functions

void runtimeConfigure ()
 
void onEntry ()
 
void sendInitialPoseEstimation ()
 
void onExit ()
 
- Public Member Functions inherited from smacc2::SmaccState< StStartNavigation, SmAwsWarehouseNavigation >
 SmaccState ()=delete
 
 SmaccState (my_context ctx)
 
virtual ~SmaccState ()
 
const smacc2::introspection::SmaccStateInfogetStateInfo ()
 
std::string getName () override
 
std::string getFullName ()
 
std::string getShortName ()
 
virtual ISmaccStategetParentState ()
 
void exit ()
 
void runtimeConfigure ()
 
void onEntry ()
 
void onExit ()
 
bool getGlobalSMData (std::string name, T &ret)
 
void setGlobalSMData (std::string name, T value)
 
void requiresComponent (SmaccComponentType *&storage)
 
virtual ISmaccStateMachinegetStateMachine ()
 
void checkWhileLoopConditionAndThrowEvent (bool(MostDerived::*conditionFn)())
 
void throwSequenceFinishedEvent ()
 
- Public Member Functions inherited from smacc2::ISmaccState
virtual ISmaccStateMachinegetStateMachine ()=0
 
virtual std::string getName ()=0
 
ISmaccStategetParentState ()
 
rclcpp::Node::SharedPtr & getNode ()
 
rclcpp::Logger getLogger ()
 
virtual std::string getClassName ()
 
template<typename TOrthogonal , typename TBehavior , typename... Args>
std::shared_ptr< TBehavior > configure (Args &&... args)
 
template<typename SmaccComponentType >
void requiresComponent (SmaccComponentType *&storage)
 
template<typename SmaccClientType >
void requiresClient (SmaccClientType *&storage)
 
template<typename T >
bool getGlobalSMData (std::string name, T &ret)
 
template<typename T >
void setGlobalSMData (std::string name, T value)
 
template<typename TStateReactor , typename TTriggerEvent , typename TEventList , typename... TEvArgs>
std::shared_ptr< TStateReactor > createStateReactor (TEvArgs... args)
 
template<typename TStateReactor , typename... TEvArgs>
std::shared_ptr< TStateReactor > createStateReactor (TEvArgs... args)
 
template<typename TEventGenerator , typename... TEvArgs>
std::shared_ptr< TEventGenerator > createEventGenerator (TEvArgs... args)
 
template<typename EventType >
void postEvent (const EventType &ev)
 
template<typename EventType >
void postEvent ()
 
template<typename TransitionType >
void notifyTransition ()
 
void notifyTransitionFromTransitionTypeInfo (std::shared_ptr< smacc2::introspection::TypeInfo > &transitionTypeInfo)
 
std::vector< std::shared_ptr< StateReactor > > & getStateReactors ()
 
std::vector< std::shared_ptr< SmaccEventGenerator > > & getEventGenerators ()
 
template<typename TOrthogonal >
TOrthogonal * getOrthogonal ()
 
template<typename TEventGenerator >
TEventGenerator * getEventGenerator ()
 
template<typename TStateReactor >
TStateReactor * getStateReactor ()
 

Static Public Member Functions

static void staticConfigure ()
 
- Static Public Member Functions inherited from smacc2::SmaccState< StStartNavigation, SmAwsWarehouseNavigation >
static void configure_orthogonal_runtime (std::function< void(TBehavior &bh, StStartNavigation &)> initializationFunction)
 
static void configure_orthogonal_runtime (std::function< void(TBehavior &bh)> initializationFunction)
 
static void configure_orthogonal (Args &&... args)
 
static std::shared_ptr< smacc2::introspection::StateReactorHandlerstatic_createStateReactor (TArgs... args)
 
static std::shared_ptr< smacc2::introspection::EventGeneratorHandlerstatic_createEventGenerator (TUArgs... args)
 
static std::shared_ptr< smacc2::introspection::StateReactorHandlerstatic_createStateReactor_aux (TUArgs... args)
 
static void initial_deep_construct (outermost_context_base_type &outermostContextBase)
 
static void deep_construct (const context_ptr_type &pContext, outermost_context_base_type &outermostContextBase)
 
static inner_context_ptr_type shallow_construct (const context_ptr_type &pContext, outermost_context_base_type &outermostContextBase)
 

Additional Inherited Members

- Public Attributes inherited from smacc2::SmaccState< StStartNavigation, SmAwsWarehouseNavigation >
bool finishStateThrown
 
mpl::list<> * smacc_inner_type
 
- Protected Attributes inherited from smacc2::ISmaccState
rclcpp::Node::SharedPtr node_
 
std::shared_ptr< rclcpp::Logger > logger_
 
std::vector< std::shared_ptr< StateReactor > > stateReactors_
 
std::vector< std::shared_ptr< smacc2::SmaccEventGenerator > > eventGenerators_
 
ISmaccStateparentState_
 
const smacc2::introspection::SmaccStateInfostateInfo_
 

Detailed Description

Definition at line 23 of file st_start_navigation.hpp.

Member Typedef Documentation

◆ reactions

Definition at line 34 of file st_start_navigation.hpp.

Member Function Documentation

◆ onEntry()

void sm_aws_warehouse_navigation::StStartNavigation::onEntry ( )
inline

Definition at line 54 of file st_start_navigation.hpp.

55 {
56 //sendInitialPoseEstimation();
57 //auto res = exec("ros2");
58 //RCLCPP_INFO(getLogger(), "launch result: %s", res.c_str());
59 }

◆ onExit()

void sm_aws_warehouse_navigation::StStartNavigation::onExit ( )
inline

Definition at line 90 of file st_start_navigation.hpp.

90{}

◆ runtimeConfigure()

void sm_aws_warehouse_navigation::StStartNavigation::runtimeConfigure ( )
inline

Definition at line 43 of file st_start_navigation.hpp.

44 {
45 // illegal wait workaround
46 // rclcpp::sleep_for(6s);
47
48 // ClNav2Z * navClient;
49 // getOrthogonal<OrNavigation>()->requiresClient(navClient);
50
51 // amcl_ = navClient->getComponent<Amcl>();
52 }

◆ sendInitialPoseEstimation()

void sm_aws_warehouse_navigation::StStartNavigation::sendInitialPoseEstimation ( )
inline

Definition at line 61 of file st_start_navigation.hpp.

62 {
63 geometry_msgs::msg::PoseWithCovarianceStamped initialposemsg;
64 // bool useSimTime = getNode()->get_parameter("use_sim_time").as_bool();
65 //getNode()->set_parameter("use_sim_time",true);
66
67 initialposemsg.header.stamp = getNode()->now();
68 initialposemsg.header.frame_id = "map";
69
70 initialposemsg.pose.pose.position.x = 3.415412425994873;
71 initialposemsg.pose.pose.position.y = 2.0;
72 initialposemsg.pose.pose.position.z = 0;
73
74 initialposemsg.pose.pose.orientation.x = 0;
75 initialposemsg.pose.pose.orientation.y = 0;
76 initialposemsg.pose.pose.orientation.z = 1;
77 initialposemsg.pose.pose.orientation.w = 0;
78
79 //z: 0.9999985465626609
80 // w: 0.00170495529732811
81
82 initialposemsg.pose.covariance = {
83 0.25, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.0, 0.0, 0.0, 0.0,
84 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
85 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.06853891909122467};
86
87 // amcl_->setInitialPose(initialposemsg);
88 }
rclcpp::Node::SharedPtr & getNode()
Definition: smacc_state.hpp:34

References smacc2::ISmaccState::getNode().

Here is the call graph for this function:

◆ staticConfigure()

static void sm_aws_warehouse_navigation::StStartNavigation::staticConfigure ( )
inlinestatic

Definition at line 37 of file st_start_navigation.hpp.

38 {
39 configure_orthogonal<OrNavigation, CbRosLaunch>();
40 configure_orthogonal<OrNavigation, CbWaitNav2Nodes>();
41 }

The documentation for this struct was generated from the following file: