TestSubstate1.cpp
Go to the documentation of this file.
1/*
2 * This file is part of ArmarX.
3 *
4 * ArmarX is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * ArmarX is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * @package RobotAPI::StatechartExecutionGroup
17 * @author Stefan Reither ( stefan dot reither at kit dot edu )
18 * @date 2020
19 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20 * GNU General Public License
21 */
22
23#include "TestSubstate1.h"
24
25//#include <ArmarXCore/core/time/TimeUtil.h>
26//#include <ArmarXCore/observers/variant/DatafieldRef.h>
27
29{
30 // DO NOT EDIT NEXT LINE
31 TestSubstate1::SubClassRegistry TestSubstate1::Registry(TestSubstate1::GetName(),
33
34 void
36 {
37 // put your user code for the enter-point here
38 // execution time should be short (<100ms)
39 ARMARX_INFO << "Substate onEnter";
40 }
41
42 void
44 {
45
46 int i = in.getInputInt();
47 ARMARX_INFO << "Substate int: " << i;
48 // uncomment this if you need a continous run function. Make sure to use sleep or use blocking wait to reduce cpu load.
49 while (!isRunningTaskStopped() && i < 10) // stop run function if returning true
50 {
51 ARMARX_INFO << "SubstateIntLoop; value: " << i;
52 i++;
53 out.setOutputInt(i);
54 sleep(1);
55 }
56
57 emitSuccess();
58 }
59
60 void
62 {
63 // put your user code for the breaking point here
64 // execution time should be short (<100ms)
65 ARMARX_INFO << "Substate broke";
66 }
67
68 void
70 {
71 // put your user code for the exit point here
72 // execution time should be short (<100ms)
73 ARMARX_INFO << "Substate exited";
74 }
75
76 // DO NOT EDIT NEXT FUNCTION
82} // namespace armarx::StatechartExecutionGroup
TestSubstate1(const XMLStateConstructorParams &stateData)
static XMLStateFactoryBasePtr CreateInstance(XMLStateConstructorParams stateData)
#define ARMARX_INFO
The normal logging level.
Definition Logging.h:181
IceInternal::Handle< XMLStateFactoryBase > XMLStateFactoryBasePtr
Definition XMLState.h:64