Orocos Real-Time Toolkit
2.8.3
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
rtt
scripting
StateMachineService.hpp
Go to the documentation of this file.
1
/***************************************************************************
2
tag: Peter Soetens Wed Jan 18 14:11:40 CET 2006 StateMachineService.hpp
3
4
StateMachineService.hpp - description
5
-------------------
6
begin : Wed January 18 2006
7
copyright : (C) 2006 Peter Soetens
8
email : peter.soetens@mech.kuleuven.be
9
10
***************************************************************************
11
* This library is free software; you can redistribute it and/or *
12
* modify it under the terms of the GNU General Public *
13
* License as published by the Free Software Foundation; *
14
* version 2 of the License. *
15
* *
16
* As a special exception, you may use this file as part of a free *
17
* software library without restriction. Specifically, if other files *
18
* instantiate templates or use macros or inline functions from this *
19
* file, or you compile this file and link it with other files to *
20
* produce an executable, this file does not by itself cause the *
21
* resulting executable to be covered by the GNU General Public *
22
* License. This exception does not however invalidate any other *
23
* reasons why the executable file might be covered by the GNU General *
24
* Public License. *
25
* *
26
* This library is distributed in the hope that it will be useful, *
27
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
28
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
29
* Lesser General Public License for more details. *
30
* *
31
* You should have received a copy of the GNU General Public *
32
* License along with this library; if not, write to the Free Software *
33
* Foundation, Inc., 59 Temple Place, *
34
* Suite 330, Boston, MA 02111-1307 USA *
35
* *
36
***************************************************************************/
37
38
39
40
#ifndef STATEMACHINE_SERVICE_HPP
41
#define STATEMACHINE_SERVICE_HPP
42
43
#include "../Service.hpp"
44
#include "
ParsedStateMachine.hpp
"
45
46
namespace
RTT
47
{
namespace
scripting {
48
typedef
boost::shared_ptr<StateMachineService>
StateMachineServicePtr
;
49
54
class
StateMachineService
55
:
public
Service
56
{
57
// used when state machines are copied.
58
// functions have a similar mechanism
59
internal::ValueDataSource< StateMachinePtr >::shared_ptr
_this;
60
ParsedStateMachinePtr
statemachine;
61
TaskContext
* mtc;
62
63
void
createOperationFactory();
64
65
public
:
66
StateMachineServicePtr
copy
(
ParsedStateMachinePtr
newsc, std::map<const base::DataSourceBase*, base::DataSourceBase*>& replacements,
bool
instantiate );
67
72
StateMachineService
(
ParsedStateMachinePtr
statemachine,
TaskContext
* tc);
73
74
~StateMachineService
();
75
79
//StateMachinePtr getStateMachine() const { return _this->get(); }
80
81
//ExecutionEngine* engine() const;
82
};
83
}}
84
85
#endif
RTT::scripting::StateMachineServicePtr
boost::shared_ptr< StateMachineService > StateMachineServicePtr
Definition:
StateMachineService.hpp:48
RTT::scripting::ParsedStateMachinePtr
boost::shared_ptr< ParsedStateMachine > ParsedStateMachinePtr
Definition:
ParsedStateMachine.hpp:48
RTT::scripting::StateMachineService::~StateMachineService
~StateMachineService()
Definition:
StateMachineService.cpp:119
ParsedStateMachine.hpp
RTT::scripting::StateMachineService::copy
StateMachineServicePtr copy(ParsedStateMachinePtr newsc, std::map< const base::DataSourceBase *, base::DataSourceBase * > &replacements, bool instantiate)
Definition:
StateMachineService.cpp:94
RTT::Service
This class allows storage and retrieval of operations, ports, attributes and properties provided by a...
Definition:
Service.hpp:93
RTT::scripting::StateMachineService::StateMachineService
StateMachineService(ParsedStateMachinePtr statemachine, TaskContext *tc)
By constructing this object, a stateMachine can be added to a taskcontext as a Service, with its operations.
Definition:
StateMachineService.cpp:109
RTT::TaskContext
The TaskContext is the C++ representation of an Orocos component.
Definition:
TaskContext.hpp:93
RTT
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition:
Activity.cpp:51
RTT::scripting::StateMachineService
This class represents a stateMachine as a Service in the Orocos TaskContext system.
Definition:
StateMachineService.hpp:54
RTT::internal::ValueDataSource::shared_ptr
boost::intrusive_ptr< ValueDataSource< T > > shared_ptr
Definition:
DataSources.hpp:72
Generated on Fri Apr 5 2019 12:14:55 for Orocos Real-Time Toolkit by
1.8.11