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
NLEdgeControlBuilder.h
Go to the documentation of this file.
1
/****************************************************************************/
9
// Interface for building edges
10
/****************************************************************************/
11
// SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/
12
// Copyright (C) 2001-2012 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 NLEdgeControlBuilder_h
23
#define NLEdgeControlBuilder_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 <
microsim/MSEdge.h
>
38
#include <
utils/geom/PositionVector.h
>
39
40
41
// ===========================================================================
42
// class declarations
43
// ===========================================================================
44
class
MSEdgeControl
;
45
class
MSLane
;
46
class
MSNet
;
47
class
OutputDevice
;
48
49
50
// ===========================================================================
51
// class definitions
52
// ===========================================================================
64
class
NLEdgeControlBuilder
{
65
public
:
67
typedef
std::vector<MSEdge*>
EdgeCont
;
68
69
public
:
71
NLEdgeControlBuilder
();
72
73
75
virtual
~NLEdgeControlBuilder
();
76
77
90
void
beginEdgeParsing
(
const
std::string&
id
,
MSEdge::EdgeBasicFunction
function
,
91
const
std::string& streetName);
92
93
111
virtual
MSLane
*
addLane
(
const
std::string&
id
,
SUMOReal
maxSpeed,
112
SUMOReal
length,
const
PositionVector
& shape,
113
SUMOReal
width,
SVCPermissions
permissions);
114
115
118
virtual
MSEdge
*
closeEdge
();
119
121
MSEdgeControl
*
build
();
122
123
133
virtual
MSEdge
*
buildEdge
(
const
std::string&
id
,
const
std::string& streetName =
""
) ;
134
135
136
protected
:
138
unsigned
int
myCurrentNumericalLaneID
;
139
141
unsigned
int
myCurrentNumericalEdgeID
;
142
144
EdgeCont
myEdges
;
145
147
MSEdge
*
myActiveEdge
;
148
150
std::vector<MSLane*> *
myLaneStorage
;
151
153
MSEdge::EdgeBasicFunction
myFunction
;
154
155
private
:
157
NLEdgeControlBuilder
(
const
NLEdgeControlBuilder
& s);
158
160
NLEdgeControlBuilder
&
operator=
(
const
NLEdgeControlBuilder
& s);
161
162
};
163
164
165
#endif
166
167
/****************************************************************************/
168
build
buildd
sumo-0.15.0~dfsg
src
netload
NLEdgeControlBuilder.h
Generated on Wed Jul 18 2012 22:58:35 for SUMO - Simulation of Urban MObility by
1.8.1.1