Eclipse SUMO - Simulation of Urban MObility
NIVissimTrafficDescription.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 /****************************************************************************/
14 // -------------------
15 /****************************************************************************/
16 #ifndef NIVissimTrafficDescription_h
17 #define NIVissimTrafficDescription_h
18 
19 
20 // ===========================================================================
21 // included modules
22 // ===========================================================================
23 #include <config.h>
24 
25 
26 #include <string>
27 #include <map>
29 
30 // ===========================================================================
31 // class definitions
32 // ===========================================================================
37 public:
38  NIVissimTrafficDescription(const std::string& name,
39  const NIVissimVehicleClassVector& vehicleTypes);
41  static bool dictionary(int id, const std::string& name,
42  const NIVissimVehicleClassVector& vehicleTypes);
43  static bool dictionary(int id, NIVissimTrafficDescription* o);
44  static NIVissimTrafficDescription* dictionary(int id);
45  static void clearDict();
46  static double meanSpeed(int id);
47  double meanSpeed() const;
48 private:
49  std::string myName;
51 private:
52  typedef std::map<int, NIVissimTrafficDescription*> DictType;
53  static DictType myDict;
54 };
55 
56 
57 #endif
58 
59 /****************************************************************************/
60 
NIVissimTrafficDescription::myName
std::string myName
Definition: NIVissimTrafficDescription.h:49
NIVissimTrafficDescription::NIVissimTrafficDescription
NIVissimTrafficDescription(const std::string &name, const NIVissimVehicleClassVector &vehicleTypes)
Definition: NIVissimTrafficDescription.cpp:39
NIVissimTrafficDescription::dictionary
static bool dictionary(int id, const std::string &name, const NIVissimVehicleClassVector &vehicleTypes)
Definition: NIVissimTrafficDescription.cpp:54
NIVissimTrafficDescription::DictType
std::map< int, NIVissimTrafficDescription * > DictType
Definition: NIVissimTrafficDescription.h:52
NIVissimTrafficDescription::meanSpeed
double meanSpeed() const
Definition: NIVissimTrafficDescription.cpp:107
NIVissimTrafficDescription::myVehicleTypes
NIVissimVehicleClassVector myVehicleTypes
Definition: NIVissimTrafficDescription.h:50
NIVissimVehicleClassVector
std::vector< NIVissimVehicleClass * > NIVissimVehicleClassVector
Definition: NIVissimVehicleClassVector.h:29
NIVissimTrafficDescription::myDict
static DictType myDict
Definition: NIVissimTrafficDescription.h:53
NIVissimTrafficDescription
Definition: NIVissimTrafficDescription.h:36
NIVissimTrafficDescription::~NIVissimTrafficDescription
~NIVissimTrafficDescription()
Definition: NIVissimTrafficDescription.cpp:45
NIVissimTrafficDescription::clearDict
static void clearDict()
Definition: NIVissimTrafficDescription.cpp:88
config.h
NIVissimVehicleClassVector.h