SMACC2
smacc2_sm_reference_library
sm_dance_bot_strikes_back
include
sm_dance_bot_strikes_back
superstates
ss_radial_pattern_3.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
#include <
smacc2/smacc.hpp
>
22
23
namespace
sm_dance_bot_strikes_back
24
{
25
namespace
SS3
26
{
27
namespace
sm_dance_bot_strikes_back
28
{
29
namespace
radial_motion_states
30
{
31
// FORWARD DECLARATION OF INNER STATES
32
class
StiRadialRotate;
33
class
StiRadialReturn;
34
class
StiRadialEndPoint;
35
class
StiRadialLoopStart;
36
37
}
// namespace radial_motion_states
38
}
// namespace sm_dance_bot_strikes_back
39
using namespace
sm_dance_bot_strikes_back::radial_motion_states
;
40
41
// STATE DECLARATION
42
struct
SsRadialPattern3
43
:
smacc2::SmaccState
<SsRadialPattern3, MsDanceBotRunMode, StiRadialLoopStart>
44
{
45
public
:
46
using
SmaccState::SmaccState;
47
48
// TRANSITION TABLE
49
typedef
mpl::list<
50
51
Transition<EvLoopEnd<StiRadialLoopStart>,
StRotateDegrees4
,
ENDLOOP
>
52
53
>
reactions
;
54
55
// STATE FUNCTIONS
56
static
void
staticConfigure
()
57
{
58
//configure_orthogonal<OrObstaclePerception, CbLidarSensor>();
59
}
60
61
int
iteration_count
;
62
63
static
constexpr
int
total_iterations
() {
return
16; }
64
static
constexpr
float
ray_angle_increment_degree
() {
return
360.0 /
total_iterations
(); }
65
static
constexpr
float
ray_length_meters
() {
return
4; }
66
67
void
runtimeConfigure
() {
iteration_count
= 0; }
68
};
69
70
// FORWARD DECLARATION FOR THE SUPERSTATE
71
using
SS
=
SsRadialPattern3
;
72
#include <
sm_dance_bot_strikes_back/states/radial_motion_states/sti_radial_end_point.hpp
>
73
#include <
sm_dance_bot_strikes_back/states/radial_motion_states/sti_radial_loop_start.hpp
>
74
#include <
sm_dance_bot_strikes_back/states/radial_motion_states/sti_radial_return.hpp
>
75
#include <
sm_dance_bot_strikes_back/states/radial_motion_states/sti_radial_rotate.hpp
>
76
}
// namespace SS3
77
}
// namespace sm_dance_bot_strikes_back
smacc2::SmaccState
Definition:
smacc_state_base.hpp:41
sm_dance_bot_strikes_back::radial_motion_states
Definition:
sti_radial_end_point.hpp:24
sm_dance_bot_strikes_back
Definition:
cl_led.hpp:22
smacc.hpp
sti_radial_end_point.hpp
sti_radial_loop_start.hpp
sti_radial_return.hpp
sti_radial_rotate.hpp
sm_dance_bot_strikes_back::SS3::SsRadialPattern3
Definition:
ss_radial_pattern_3.hpp:44
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::runtimeConfigure
void runtimeConfigure()
Definition:
ss_radial_pattern_3.hpp:67
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::iteration_count
int iteration_count
Definition:
ss_radial_pattern_3.hpp:61
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::total_iterations
static constexpr int total_iterations()
Definition:
ss_radial_pattern_3.hpp:63
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::reactions
mpl::list< Transition< EvLoopEnd< StiRadialLoopStart >, StRotateDegrees4, ENDLOOP > > reactions
Definition:
ss_radial_pattern_3.hpp:53
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::staticConfigure
static void staticConfigure()
Definition:
ss_radial_pattern_3.hpp:56
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::ray_angle_increment_degree
static constexpr float ray_angle_increment_degree()
Definition:
ss_radial_pattern_3.hpp:64
sm_dance_bot_strikes_back::SS3::SsRadialPattern3::ray_length_meters
static constexpr float ray_length_meters()
Definition:
ss_radial_pattern_3.hpp:65
sm_dance_bot_strikes_back::StRotateDegrees4
Definition:
st_rotate_degrees_4.hpp:28
smacc2::default_transition_tags::ENDLOOP
Definition:
smacc_types.hpp:93
Generated by
1.9.4