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-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 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
,
const
MSEdge::EdgeBasicFunction
function
,
91
const
std::string& streetName);
92
93
110
virtual
MSLane
*
addLane
(
const
std::string&
id
,
SUMOReal
maxSpeed,
111
SUMOReal
length,
const
PositionVector
& shape,
112
SUMOReal
width,
SVCPermissions
permissions);
113
114
117
virtual
MSEdge
*
closeEdge
();
118
120
MSEdgeControl
*
build
();
121
122
132
virtual
MSEdge
*
buildEdge
(
const
std::string&
id
,
const
MSEdge::EdgeBasicFunction
function
,
const
std::string& streetName =
""
);
133
134
135
protected
:
137
unsigned
int
myCurrentNumericalLaneID
;
138
140
unsigned
int
myCurrentNumericalEdgeID
;
141
143
EdgeCont
myEdges
;
144
146
MSEdge
*
myActiveEdge
;
147
149
std::vector<MSLane*>*
myLaneStorage
;
150
151
private
:
153
NLEdgeControlBuilder
(
const
NLEdgeControlBuilder
& s);
154
156
NLEdgeControlBuilder
&
operator=
(
const
NLEdgeControlBuilder
& s);
157
158
};
159
160
161
#endif
162
163
/****************************************************************************/
164
home
gladk
tmp
05
sumo-0.17.1~dfsg
src
netload
NLEdgeControlBuilder.h
Generated on Sun Jun 16 2013 07:08:10 for SUMO - Simulation of Urban MObility by
1.8.1.2