rad 6.2.0
Loading...
Searching...
No Matches
Action.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#ifndef SCXML4CPP_ACTION_H
32#define SCXML4CPP_ACTION_H
33
34#ifndef __cplusplus
35#error This is a C++ include file and cannot be used from plain C
36#endif
37
38#include <string>
39
40namespace scxml4cpp {
41
42class Context;
43
65class Action
66{
67
68 public:
74 Action(const std::string& id);
75 virtual ~Action();
76
80 std::string getId() const;
81
85 std::string getParam() const;
86
92 void setId(const std::string& id);
93
99 void setParam(const std::string& p);
100
109 virtual void execute(Context* c) = 0;
110
121 virtual bool evaluate(Context* c) = 0;
122
123 private:
124 std::string mId;
125 std::string mParam;
126
127 Action(const Action&);
128 Action& operator= (const Action&);
129};
130
131} // namespace scxml4cpp
132
133#endif // SCXML4CPP_ACTION_H
Definition Action.h:66
void setId(const std::string &id)
Definition Action.cpp:61
Action(const std::string &id)
Definition Action.cpp:38
virtual bool evaluate(Context *c)=0
virtual ~Action()
Definition Action.cpp:44
void setParam(const std::string &p)
Definition Action.cpp:67
virtual void execute(Context *c)=0
std::string getParam() const
Definition Action.cpp:55
std::string getId() const
Definition Action.cpp:49
Definition Context.h:58
Definition Action.cpp:36
Definition testCoroActivity.cpp:16