SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
NLDiscreteEventBuilder.h
Go to the documentation of this file.
1 /****************************************************************************/
8 // missing_desc
9 /****************************************************************************/
10 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
11 // Copyright (C) 2001-2016 DLR (http://www.dlr.de/) and contributors
12 /****************************************************************************/
13 //
14 // This file is part of SUMO.
15 // SUMO is free software: you can redistribute it and/or modify
16 // it under the terms of the GNU General Public License as published by
17 // the Free Software Foundation, either version 3 of the License, or
18 // (at your option) any later version.
19 //
20 /****************************************************************************/
21 #ifndef NLDiscreteEventBuilder_h
22 #define NLDiscreteEventBuilder_h
23 
24 
25 // ===========================================================================
26 // included modules
27 // ===========================================================================
28 #ifdef _MSC_VER
29 #include <windows_config.h>
30 #else
31 #include <config.h>
32 #endif
33 
34 #include <xercesc/sax2/Attributes.hpp>
35 #include <string>
36 #include <map>
38 
39 
40 // ===========================================================================
41 // class declarations
42 // ===========================================================================
43 class MSNet;
44 
45 
46 // ===========================================================================
47 // class definitions
48 // ===========================================================================
55 public:
57  enum ActionType {
64  };
65 
68 
71 
73  void addAction(const SUMOSAXAttributes& attrs, const std::string& basePath);
74 
75 private:
77  void buildSaveTLStateCommand(const SUMOSAXAttributes& attrs, const std::string& basePath);
78 
80  void buildSaveTLSwitchesCommand(const SUMOSAXAttributes& attrs, const std::string& basePath);
81 
83  void buildSaveTLSwitchStatesCommand(const SUMOSAXAttributes& attrs, const std::string& basePath);
84 
85 private:
86  NLDiscreteEventBuilder& operator=(const NLDiscreteEventBuilder&); // just to avoid a compiler warning
87 
88 protected:
90  typedef std::map<std::string, ActionType> KnownActions;
91 
93  KnownActions myActions;
94 
96 
97 };
98 
99 
100 #endif
101 
102 /****************************************************************************/
103 
KnownActions myActions
Build actions that shall be executed during the simulation.
ActionType
Known action types.
The simulated network and simulation perfomer.
Definition: MSNet.h:93
std::map< std::string, ActionType > KnownActions
Definitions of a storage for build actions.
Encapsulated SAX-Attributes.
void buildSaveTLSwitchesCommand(const SUMOSAXAttributes &attrs, const std::string &basePath)
Builds an action which saves the switch times of links into a file.
void addAction(const SUMOSAXAttributes &attrs, const std::string &basePath)
Builds an action and saves it for further use.
NLDiscreteEventBuilder(MSNet &net)
Constructor.
NLDiscreteEventBuilder & operator=(const NLDiscreteEventBuilder &)
void buildSaveTLStateCommand(const SUMOSAXAttributes &attrs, const std::string &basePath)
Builds an action which saves the state of a certain tls into a file.
void buildSaveTLSwitchStatesCommand(const SUMOSAXAttributes &attrs, const std::string &basePath)
Builds an action which saves the switch times and states of tls into a file.