SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
NWWriter_XML.h
Go to the documentation of this file.
1 /****************************************************************************/
9 // Exporter writing networks using XML (native input) format
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 NWWriter_XML_h
23 #define NWWriter_XML_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 <map>
39 
40 
41 // ===========================================================================
42 // class declarations
43 // ===========================================================================
44 class NBEdge;
45 class NBEdgeCont;
46 class NBNetBuilder;
47 class NBNode;
48 class NBNodeCont;
50 class NBTypeCont;
51 class OptionsCont;
52 
53 
54 // ===========================================================================
55 // class definitions
56 // ===========================================================================
62 class NWWriter_XML {
63 public:
69  static void writeNetwork(const OptionsCont& oc, NBNetBuilder& nb);
70 
75  static void writeJoinedJunctions(const OptionsCont& oc, NBNodeCont& nc);
76 
81  static void writeStreetSigns(const OptionsCont& oc, NBEdgeCont& ec);
82 
83 private:
88  static void writeNodes(const OptionsCont& oc, NBNodeCont& nc);
89 
95  static void writeEdgesAndConnections(const OptionsCont& oc, NBNodeCont& nc, NBEdgeCont& ec);
96 
97 
103  static void writeTrafficLights(const OptionsCont& oc, NBTrafficLightLogicCont& tc, NBEdgeCont& ec);
104 
105 };
106 
107 
108 #endif
109 
110 /****************************************************************************/
111 
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:62
The representation of a single edge during network building.
Definition: NBEdge.h:71
static void writeJoinedJunctions(const OptionsCont &oc, NBNodeCont &nc)
Writes the joined-juncionts 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:66
static void writeNetwork(const OptionsCont &oc, NBNetBuilder &nb)
Writes the network into XML-files (nodes, edges, connections, traffic lights)
static void writeEdgesAndConnections(const OptionsCont &oc, NBNodeCont &nc, NBEdgeCont &ec)
Writes the edges and connections files.
Instance responsible for building networks.
Definition: NBNetBuilder.h:113
A storage for options typed value containers)
Definition: OptionsCont.h:108
Represents a single node (junction) during network building.
Definition: NBNode.h:74
Container for nodes during the netbuilding process.
Definition: NBNodeCont.h:63
A storage for available types of edges.
Definition: NBTypeCont.h:56