SMACC2
smacc2_sm_reference_library
sm_atomic
include
sm_atomic
sm_atomic.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
#include <
smacc2/smacc.hpp
>
16
17
// CLIENTS
18
#include <ros_timer_client/cl_ros_timer.hpp>
19
20
//CLIENT BEHAVIORS
21
#include <ros_timer_client/client_behaviors/cb_timer_countdown_loop.hpp>
22
#include <ros_timer_client/client_behaviors/cb_timer_countdown_once.hpp>
23
24
// ORTHOGONALS
25
#include "orthogonals/or_timer.hpp"
26
27
using namespace
boost;
28
using namespace
smacc2
;
29
30
namespace
sm_atomic
31
{
32
//STATE
33
class
State1;
34
class
State2;
35
36
//--------------------------------------------------------------------
37
//STATE_MACHINE
38
struct
SmAtomic
:
public
smacc2::SmaccStateMachineBase
<SmAtomic, State1>
39
{
40
using
SmaccStateMachineBase::SmaccStateMachineBase;
41
42
virtual
void
onInitialize
()
override
{ this->createOrthogonal<OrTimer>(); }
43
};
44
45
}
// namespace sm_atomic
46
47
#include "states/st_state_1.hpp"
48
#include "states/st_state_2.hpp"
sm_atomic
Definition:
or_timer.hpp:22
smacc2
Definition:
cp_topic_publisher.hpp:28
smacc.hpp
sm_atomic::SmAtomic
Definition:
sm_atomic.hpp:39
sm_atomic::SmAtomic::onInitialize
virtual void onInitialize() override
this function should be implemented by the user to create the orthogonals
Definition:
sm_atomic.hpp:42
smacc2::SmaccStateMachineBase
State Machine.
Definition:
smacc_state_machine_base.hpp:34
Generated by
1.9.4