SUMO - Simulation of Urban MObility
InductionLoop.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2017-2017 German Aerospace Center (DLR) and others.
4 /****************************************************************************/
5 //
6 // This program and the accompanying materials
7 // are made available under the terms of the Eclipse Public License v2.0
8 // which accompanies this distribution, and is available at
9 // http://www.eclipse.org/legal/epl-v20.html
10 //
11 /****************************************************************************/
17 // C++ TraCI client API implementation
18 /****************************************************************************/
19 #ifndef InductionLoop_h
20 #define InductionLoop_h
21 
22 
23 // ===========================================================================
24 // included modules
25 // ===========================================================================
26 #ifdef _MSC_VER
27 #include <windows_config.h>
28 #else
29 #include <config.h>
30 #endif
31 
32 #include <vector>
33 
34 
35 // ===========================================================================
36 // class declarations
37 // ===========================================================================
38 class MSInductLoop;
39 namespace libsumo {
40 struct TraCIVehicleData;
41 }
42 
43 
44 // ===========================================================================
45 // class definitions
46 // ===========================================================================
51 namespace libsumo {
53 public:
54  static std::vector<std::string> getIDList();
55  static int getIDCount();
56  static double getPosition(const std::string& detID);
57  static std::string getLaneID(const std::string& detID);
58  static int getLastStepVehicleNumber(const std::string& detID);
59  static double getLastStepMeanSpeed(const std::string& detID);
60  static std::vector<std::string> getLastStepVehicleIDs(const std::string& detID);
61  static double getLastStepOccupancy(const std::string& detID);
62  static double getLastStepMeanLength(const std::string& detID);
63  static double getTimeSinceDetection(const std::string& detID);
64  static std::vector<libsumo::TraCIVehicleData> getVehicleData(const std::string& detID);
65 
69  static NamedRTree* getTree();
70 
71 private:
72  static MSInductLoop* getDetector(const std::string& detID);
73 
75  InductionLoop();
76 
78  InductionLoop(const InductionLoop& src);
79 
82 
83 };
84 }
85 
86 
87 #endif
88 
89 /****************************************************************************/
static std::string getLaneID(const std::string &detID)
A RT-tree for efficient storing of SUMO&#39;s Named objects.
Definition: NamedRTree.h:71
static std::vector< std::string > getIDList()
static double getLastStepOccupancy(const std::string &detID)
InductionLoop()
invalidated standard constructor
static double getTimeSinceDetection(const std::string &detID)
static std::vector< std::string > getLastStepVehicleIDs(const std::string &detID)
static MSInductLoop * getDetector(const std::string &detID)
InductionLoop & operator=(const InductionLoop &src)
invalidated assignment operator
Definition: Edge.cpp:31
static int getLastStepVehicleNumber(const std::string &detID)
static std::vector< libsumo::TraCIVehicleData > getVehicleData(const std::string &detID)
static double getLastStepMeanSpeed(const std::string &detID)
static NamedRTree * getTree()
Returns a tree filled with inductive loop instances.
static double getPosition(const std::string &detID)
An unextended detector measuring at a fixed position on a fixed lane.
Definition: MSInductLoop.h:70
static double getLastStepMeanLength(const std::string &detID)