Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
rtt
extras
SimulationThread.hpp
Go to the documentation of this file.
1
/***************************************************************************
2
tag: Peter Soetens Tue Dec 21 22:43:07 CET 2004 SimulationThread.hpp
3
4
SimulationThread.hpp - description
5
-------------------
6
begin : Tue December 21 2004
7
copyright : (C) 2004 Peter Soetens
8
email : peter.soetens@mech.kuleuven.ac.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 SIMULATIONTHREAD_HPP
41
#define SIMULATIONTHREAD_HPP
42
43
#include "
TimerThread.hpp
"
44
#include "../os/rtt-os-fwd.hpp"
45
46
47
namespace
RTT
48
{
namespace
extras {
49
typedef
boost::shared_ptr<SimulationThread>
SimulationThreadPtr
;
50
64
class
RTT_API
SimulationThread
65
:
public
TimerThread
66
{
67
public
:
77
static
SimulationThreadPtr Instance(
double
period = 0.001);
78
85
static
bool
Release();
86
90
virtual
~
SimulationThread
();
91
92
virtual
bool
start();
93
98
virtual
bool
isRunning()
const
;
99
104
virtual
bool
start(
unsigned
int
maxsteps);
105
114
virtual
bool
run(
unsigned
int
maxsteps);
115
119
virtual
os::ThreadInterface
* simthread();
120
protected
:
121
bool
initialize();
122
void
step();
123
void
finalize();
124
128
SimulationThread
(
double
period);
129
130
private
:
131
135
static
SimulationThreadPtr
_instance
;
136
140
os::TimeService
*
beat
;
141
142
unsigned
int
maxsteps_
, cursteps;
143
144
bool
sim_running
;
145
};
146
}}
// namespace RTT
147
148
#endif
RTT::os::TimeService
Definition:
TimeService.hpp:53
RTT::extras::TimerThread
Definition:
TimerThread.hpp:69
TimerThread.hpp
RTT::os::ThreadInterface
Definition:
ThreadInterface.hpp:56
RTT::extras::SimulationThread::beat
os::TimeService * beat
Definition:
SimulationThread.hpp:140
RTT::extras::SimulationThreadPtr
boost::shared_ptr< SimulationThread > SimulationThreadPtr
Definition:
SimulationThread.hpp:49
RTT::extras::SimulationThread::sim_running
bool sim_running
Definition:
SimulationThread.hpp:144
RTT::extras::SimulationThread::_instance
static SimulationThreadPtr _instance
Definition:
SimulationThread.hpp:135
RTT::extras::SimulationThread
Definition:
SimulationThread.hpp:64
RTT
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition:
Activity.cpp:53
RTT::extras::SimulationThread::maxsteps_
unsigned int maxsteps_
Definition:
SimulationThread.hpp:142
rtt
Author(s): RTT Developers
autogenerated on Tue Jun 25 2019 19:33:36