Eclipse SUMO - Simulation of Urban MObility
NWWriter_XML.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
17 // Exporter writing networks using XML (native input) format
18 /****************************************************************************/
19 #ifndef NWWriter_XML_h
20 #define NWWriter_XML_h
21 
22 
23 // ===========================================================================
24 // included modules
25 // ===========================================================================
26 #include <config.h>
27 
28 #include <string>
29 #include <map>
32 
33 
34 // ===========================================================================
35 // class declarations
36 // ===========================================================================
37 class NBEdge;
38 class NBEdgeCont;
39 class NBNetBuilder;
40 class NBNode;
41 class NBNodeCont;
42 class NBParkingCont;
43 class NBPTStopCont;
44 class NBPTLineCont;
46 class NBTypeCont;
47 class OptionsCont;
48 
49 
50 // ===========================================================================
51 // class definitions
52 // ===========================================================================
58 class NWWriter_XML {
59 public:
65  static void writeNetwork(const OptionsCont& oc, NBNetBuilder& nb);
66 
71  static void writeJoinedJunctions(const OptionsCont& oc, NBNodeCont& nc);
72 
77  static void writeStreetSigns(const OptionsCont& oc, NBEdgeCont& ec);
78 
79 private:
84  static void writeNodes(const OptionsCont& oc, NBNodeCont& nc);
85 
90  static void writeTypes(const OptionsCont& oc, NBTypeCont& tc);
91 
96  static void writeEdgesAndConnections(const OptionsCont& oc, NBNodeCont& nc, NBEdgeCont& ec);
97 
98 
104  static void writeTrafficLights(const OptionsCont& oc, NBTrafficLightLogicCont& tc, NBEdgeCont& ec);
105 
110  static void writePTStops(const OptionsCont& oc, NBPTStopCont& ec);
111  static void writePTLines(const OptionsCont& cont, NBPTLineCont& lc, NBEdgeCont& ec);
112 
114  static void writeParkingAreas(const OptionsCont& cont, NBParkingCont& pc, NBEdgeCont& ec);
115 };
116 
117 
118 #endif
119 
120 /****************************************************************************/
121 
static void writeStreetSigns(const OptionsCont &oc, NBEdgeCont &ec)
Writes street signs as POIs to file.
A container for traffic light definitions and built programs.
Exporter writing networks using XML (native input) format.
Definition: NWWriter_XML.h:58
The representation of a single edge during network building.
Definition: NBEdge.h:86
static void writeJoinedJunctions(const OptionsCont &oc, NBNodeCont &nc)
Writes the joined-juncionts to file.
static void writeParkingAreas(const OptionsCont &cont, NBParkingCont &pc, NBEdgeCont &ec)
writes imported parking areas to file
static void writeNodes(const OptionsCont &oc, NBNodeCont &nc)
Writes the nodes file.
static void writeTrafficLights(const OptionsCont &oc, NBTrafficLightLogicCont &tc, NBEdgeCont &ec)
Writes the traffic lights file.
Storage for edges, including some functionality operating on multiple edges.
Definition: NBEdgeCont.h:61
static void writeNetwork(const OptionsCont &oc, NBNetBuilder &nb)
Writes the network into XML-files (nodes, edges, connections, traffic lights)
static void writeTypes(const OptionsCont &oc, NBTypeCont &tc)
Writes the types file.
static void writePTStops(const OptionsCont &oc, NBPTStopCont &ec)
Writes the pt stops file.
static void writeEdgesAndConnections(const OptionsCont &oc, NBNodeCont &nc, NBEdgeCont &ec)
Writes the edges and connections files.
Instance responsible for building networks.
Definition: NBNetBuilder.h:110
A storage for options typed value containers)
Definition: OptionsCont.h:90
Represents a single node (junction) during network building.
Definition: NBNode.h:68
Container for nodes during the netbuilding process.
Definition: NBNodeCont.h:60
static void writePTLines(const OptionsCont &cont, NBPTLineCont &lc, NBEdgeCont &ec)
A storage for available types of edges.
Definition: NBTypeCont.h:55