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
RORouteHandler.h
Go to the documentation of this file.
1
/****************************************************************************/
9
// Parser and container for routes during their loading
10
/****************************************************************************/
11
// SUMO, Simulation of Urban MObility; see http://sumo-sim.org/
12
// Copyright (C) 2001-2013 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 RORouteHandler_h
23
#define RORouteHandler_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 <
utils/common/RandomDistributor.h
>
38
#include <
utils/common/SUMOTime.h
>
39
#include <
utils/xml/SUMORouteHandler.h
>
40
41
42
// ===========================================================================
43
// class declarations
44
// ===========================================================================
45
class
OutputDevice_String
;
46
class
ROEdge
;
47
class
RONet
;
48
class
RORoute
;
49
class
RORouteDef
;
50
51
52
// ===========================================================================
53
// class definitions
54
// ===========================================================================
63
class
RORouteHandler
:
public
SUMORouteHandler
{
64
public
:
66
RORouteHandler
(
RONet
& net,
const
std::string& file,
67
const
bool
tryRepair,
68
const
bool
emptyDestinationsAllowed,
69
const
bool
ignoreErrors);
70
72
virtual
~RORouteHandler
();
73
74
protected
:
76
77
85
virtual
void
myStartElement
(
int
element,
86
const
SUMOSAXAttributes
& attrs);
87
88
95
virtual
void
myEndElement
(
int
element);
97
98
105
void
parseFromTo
(std::string element,
106
const
SUMOSAXAttributes
& attrs);
107
108
110
void
openVehicleTypeDistribution
(
const
SUMOSAXAttributes
& attrs);
111
113
void
closeVehicleTypeDistribution
();
114
116
void
openRoute
(
const
SUMOSAXAttributes
& attrs);
117
123
void
closeRoute
(
const
bool
mayBeDisconnected =
false
);
124
126
void
openRouteDistribution
(
const
SUMOSAXAttributes
& attrs);
127
129
void
closeRouteDistribution
();
130
132
void
closeVehicle
();
133
135
void
closePerson
();
136
138
void
closeFlow
();
139
141
void
addStop
(
const
SUMOSAXAttributes
& attrs);
142
144
void
parseEdges
(
const
std::string& desc, std::vector<const ROEdge*>& into,
145
const
std::string& rid);
146
147
protected
:
149
RONet
&
myNet
;
150
152
std::vector<const ROEdge*>
myActiveRoute
;
153
155
OutputDevice_String
*
myActivePlan
;
156
158
const
bool
myTryRepair
;
159
161
const
bool
myEmptyDestinationsAllowed
;
162
164
MsgHandler
*
const
myErrorOutput
;
165
167
RandomDistributor<SUMOVTypeParameter*>
*
myCurrentVTypeDistribution
;
168
170
std::string
myCurrentVTypeDistributionID
;
171
173
RORouteDef
*
myCurrentAlternatives
;
174
176
SUMOReal
myCurrentCosts
;
177
178
private
:
180
RORouteHandler
(
const
RORouteHandler
& s);
181
183
RORouteHandler
&
operator=
(
const
RORouteHandler
& s);
184
185
};
186
187
188
#endif
189
190
/****************************************************************************/
191
build
buildd
sumo-0.18~dfsg
src
router
RORouteHandler.h
Generated on Wed Oct 23 2013 01:15:12 for SUMO - Simulation of Urban MObility by
1.8.4