SMACC2
st_navigate_to_waypoints_x_2.hpp
Go to the documentation of this file.
1// Copyright 2021 RobosoftAI Inc.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15/*****************************************************************************************************************
16 *
17 * Authors: Pablo Inigo Blasco, Brett Aldrich
18 *
19 ******************************************************************************************************************/
20
21#pragma once
22
23#include <smacc2/smacc.hpp>
24
26{
27// STATE DECLARATION
28struct StNavigateToWaypointsX2 : smacc2::SmaccState<StNavigateToWaypointsX2, MsDanceBotRunMode>
29{
30 using SmaccState::SmaccState;
31
32 // CUSTOM TRANSITION TAGS
34 {
35 };
37 {
38 };
40 {
41 };
43 {
44 };
46 {
47 };
49 {
50 };
52 {
53 };
55 {
56 };
58 {
59 };
61 {
62 };
64 {
65 };
67 {
68 };
70 {
71 };
73 {
74 };
76 {
77 };
79 {
80 };
82 {
83 };
85 {
86 };
88 {
89 };
91 {
92 };
94 {
95 };
97 {
98 };
100 {
101 };
103 {
104 };
106 {
107 };
109 {
110 };
112 {
113 };
115 {
116 };
118 {
119 };
121 {
122 };
123
124 // TRANSITION TABLE
125 typedef mpl::list<
126 Transition<EvWaypoint9<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_10>,
127 Transition<EvWaypoint10<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_11>,
128 Transition<EvWaypoint11<ClNav2Z, OrNavigation>, StRotateDegrees4, TRANSITION_12>,
129 Transition<EvWaypoint12<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_13>,
130 Transition<EvWaypoint13<ClNav2Z, OrNavigation>, StRotateDegrees4, TRANSITION_14>,
131 Transition<EvWaypoint14<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_15>,
132 Transition<EvWaypoint15<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_16>,
133 Transition<EvWaypoint16<ClNav2Z, OrNavigation>, StRotateDegrees4, TRANSITION_17>,
134 Transition<EvWaypoint17<ClNav2Z, OrNavigation>, StRotateDegrees3, TRANSITION_18>,
135 Transition<EvWaypoint18<ClNav2Z, OrNavigation>, StRotateDegrees4, TRANSITION_19>,
136 Transition<EvWaypoint19<ClNav2Z, OrNavigation>, SS1::SsRadialPattern1, TRANSITION_20> ,
137 Transition<EvCbFailure<CbNavigateNextWaypoint, OrNavigation>, StNavigateToWaypointsX2>
138 >
140
141 // STATE FUNCTIONS
142 static void staticConfigure()
143 {
144 configure_orthogonal<OrLED, CbLEDOn>();
145 configure_orthogonal<OrNavigation, CbNavigateNextWaypoint>();
146 configure_orthogonal<OrNavigation, CbResumeSlam>();
147 }
148
150
152 {
153 }
154};
155} // namespace sm_dance_bot_warehouse_3
mpl::list< Transition< EvWaypoint9< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_10 >, Transition< EvWaypoint10< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_11 >, Transition< EvWaypoint11< ClNav2Z, OrNavigation >, StRotateDegrees4, TRANSITION_12 >, Transition< EvWaypoint12< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_13 >, Transition< EvWaypoint13< ClNav2Z, OrNavigation >, StRotateDegrees4, TRANSITION_14 >, Transition< EvWaypoint14< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_15 >, Transition< EvWaypoint15< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_16 >, Transition< EvWaypoint16< ClNav2Z, OrNavigation >, StRotateDegrees4, TRANSITION_17 >, Transition< EvWaypoint17< ClNav2Z, OrNavigation >, StRotateDegrees3, TRANSITION_18 >, Transition< EvWaypoint18< ClNav2Z, OrNavigation >, StRotateDegrees4, TRANSITION_19 >, Transition< EvWaypoint19< ClNav2Z, OrNavigation >, SS1::SsRadialPattern1, TRANSITION_20 >, Transition< EvCbFailure< CbNavigateNextWaypoint, OrNavigation >, StNavigateToWaypointsX2 > > reactions