SUMO - Simulation of Urban MObility
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
MSDevice.h
Go to the documentation of this file.
1
/****************************************************************************/
9
// Abstract in-vehicle device
10
/****************************************************************************/
11
// SUMO, Simulation of Urban MObility; see http://sumo-sim.org/
12
// Copyright (C) 2007-2014 DLR (http://www.dlr.de/) and contributors
13
/****************************************************************************/
14
//
15
// This file is part of SUMO.
16
// SUMO is free software: you can redistribute it and/or modify
17
// it under the terms of the GNU General Public License as published by
18
// the Free Software Foundation, either version 3 of the License, or
19
// (at your option) any later version.
20
//
21
/****************************************************************************/
22
#ifndef MSDevice_h
23
#define MSDevice_h
24
25
26
// ===========================================================================
27
// included modules
28
// ===========================================================================
29
#ifdef _MSC_VER
30
#include <
windows_config.h
>
31
#else
32
#include <
config.h
>
33
#endif
34
35
#include <string>
36
#include <vector>
37
#include <map>
38
#include <set>
39
#include <
microsim/MSMoveReminder.h
>
40
#include <
utils/common/Named.h
>
41
#include <
utils/common/UtilExceptions.h
>
42
43
44
// ===========================================================================
45
// class declarations
46
// ===========================================================================
47
class
OutputDevice
;
48
class
SUMOVehicle
;
49
class
OptionsCont
;
50
51
52
// ===========================================================================
53
// class definitions
54
// ===========================================================================
69
class
MSDevice
:
public
MSMoveReminder
,
public
Named
{
70
public
:
74
static
void
insertOptions
(
OptionsCont
& oc);
75
76
82
static
void
buildVehicleDevices
(
SUMOVehicle
& v, std::vector<MSDevice*>& into);
83
84
85
86
public
:
92
MSDevice
(
SUMOVehicle
& holder,
const
std::string&
id
) :
93
MSMoveReminder
(id),
Named
(id),
myHolder
(holder) {
94
}
95
96
98
virtual
~MSDevice
() { }
99
100
105
SUMOVehicle
&
getHolder
()
const
{
106
return
myHolder
;
107
}
108
109
122
virtual
void
generateOutput
()
const
{
123
}
124
125
126
127
protected
:
130
137
static
void
insertDefaultAssignmentOptions
(
const
std::string& deviceName,
const
std::string& optionsTopic,
OptionsCont
& oc);
138
139
146
static
bool
equippedByDefaultAssignmentOptions
(
const
OptionsCont
& oc,
const
std::string& deviceName,
SUMOVehicle
& v);
148
149
150
151
protected
:
153
SUMOVehicle
&
myHolder
;
154
155
156
157
private
:
159
static
std::map<std::string, std::set<std::string> >
myExplicitIDs
;
160
161
162
private
:
164
MSDevice
(
const
MSDevice
&);
165
167
MSDevice
&
operator=
(
const
MSDevice
&);
168
169
};
170
171
172
#endif
173
174
/****************************************************************************/
175
tmp
buildd
sumo-0.21.0+dfsg
src
microsim
devices
MSDevice.h
Generated on Thu Nov 20 2014 19:49:55 for SUMO - Simulation of Urban MObility by
1.8.1.2