rad
4.0.0
scxml4cpp
engine
src
include
scxml4cpp
Merger.h
Go to the documentation of this file.
1
10
/*
11
* scampl4cpp/engine
12
*
13
* Copyright by European Southern Observatory, 2012
14
* All rights reserved
15
*
16
* This library is free software; you can redistribute it and/or
17
* modify it under the terms of the GNU Lesser General Public
18
* License as published by the Free Software Foundation; either
19
* version 2.1 of the License, or (at your option) any later version.
20
*
21
* This library is distributed in the hope that it will be useful,
22
* but WITHOUT ANY WARRANTY; without even the implied warranty of
23
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24
* Lesser General Public License for more details.
25
*
26
* You should have received a copy of the GNU Lesser General Public
27
* License along with this library; if not, write to the Free Software
28
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
29
* 02111-1307 USA.
30
*/
31
32
#ifndef SCXML4CPP_MERGER_H
33
#define SCXML4CPP_MERGER_H
34
35
#ifndef __cplusplus
36
#error This is a C++ include file and cannot be used from plain C
37
#endif
38
39
40
#include <list>
41
#include <string>
42
43
44
namespace
scxml4cpp
{
45
46
class
Transition;
47
class
StateMachine;
48
class
State;
49
61
class
Merger
62
{
63
public
:
69
Merger
(
StateMachine
& sm);
70
~Merger
();
71
76
void
append
(
StateMachine
&
append
);
77
85
State
*
findState
(
const
std::string&
id
, std::list<State*>& list);
86
87
private
:
88
StateMachine
& mStateMachine;
89
98
void
checkForNewTransition(
Transition
* t,
State
* s,
State
* d);
99
108
void
checkForNewState(
State
* p,
State
* s, std::list<State*>& list);
109
119
void
copyState(
State
* src,
State
* dst);
120
121
Merger
(
const
Merger
&);
122
Merger
& operator= (
const
Merger
&);
123
};
124
125
}
// namespace scxml4cpp
126
127
#endif // SCXML4CPP_MERGER_H
128
129
130
scxml4cpp
Definition:
Action.h:40
scxml4cpp::Merger
Definition:
Merger.h:62
scxml4cpp::Transition
Definition:
Transition.h:68
scxml4cpp::Merger::~Merger
~Merger()
Definition:
Merger.cpp:55
scxml4cpp::StateMachine
Definition:
StateMachine.h:64
scxml4cpp::State
Definition:
State.h:60
scxml4cpp::Merger::append
void append(StateMachine &append)
Definition:
Merger.cpp:60
scxml4cpp::Merger::Merger
Merger(StateMachine &sm)
Definition:
Merger.cpp:49
scxml4cpp::Merger::findState
State * findState(const std::string &id, std::list< State * > &list)
Definition:
Merger.cpp:259
Generated by
1.8.20