SUMO - Simulation of Urban MObility
GUIInstantInductLoop.h
Go to the documentation of this file.
1 /****************************************************************************/
7 // The gui-version of the MSInstantInductLoop
8 /****************************************************************************/
9 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
10 // Copyright (C) 2001-2016 DLR (http://www.dlr.de/) and contributors
11 /****************************************************************************/
12 //
13 // This file is part of SUMO.
14 // SUMO is free software: you can redistribute it and/or modify
15 // it under the terms of the GNU General Public License as published by
16 // the Free Software Foundation, either version 3 of the License, or
17 // (at your option) any later version.
18 //
19 /****************************************************************************/
20 #ifndef GUIInstantInductLoop_h
21 #define GUIInstantInductLoop_h
22 
23 
24 // ===========================================================================
25 // included modules
26 // ===========================================================================
27 #ifdef _MSC_VER
28 #include <windows_config.h>
29 #else
30 #include <config.h>
31 #endif
32 
35 #include <utils/geom/Position.h>
36 #include "GUIDetectorWrapper.h"
37 
38 
39 // ===========================================================================
40 // class definitions
41 // ===========================================================================
47 public:
55  GUIInstantInductLoop(const std::string& id, OutputDevice& od,
56  MSLane* const lane, SUMOReal positionInMeters);
57 
58 
61 
62 
63 
68 
69 
70 public:
75  class MyWrapper : public GUIDetectorWrapper {
76  public:
78  MyWrapper(GUIInstantInductLoop& detector, SUMOReal pos);
79 
81  ~MyWrapper();
82 
83 
85 
86 
95  GUIMainWindow& app, GUISUMOAbstractView& parent);
96 
97 
104 
105 
110  void drawGL(const GUIVisualizationSettings& s) const;
112 
113 
116 
117 
118  private:
121 
124 
127 
130 
133 
134  private:
136  MyWrapper(const MyWrapper&);
137 
139  MyWrapper& operator=(const MyWrapper&);
140 
141  };
142 
143 
145  mutable MFXMutex myLock;
146 
147 };
148 
149 
150 #endif
151 
152 /****************************************************************************/
153 
MFXMutex myLock
Mutex preventing parallel read/write access to internal MSInductLoop state.
MyWrapper(GUIInstantInductLoop &detector, SUMOReal pos)
Constructor.
GUIInstantInductLoop(const std::string &id, OutputDevice &od, MSLane *const lane, SUMOReal positionInMeters)
Constructor.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
Stores the information about how to visualize structures.
MyWrapper & operator=(const MyWrapper &)
Invalidated assignment operator.
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
An instantaneous induction loop.
Boundary myBoundary
The detector&#39;s boundary.
A class that stores a 2D geometrical boundary.
Definition: Boundary.h:48
SUMOReal myFGRotation
The rotation in full-geometry mode.
GUIInstantInductLoop & myDetector
The wrapped detector.
SUMOReal myPosition
The position on the lane.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:46
GUIInstantInductLoop & getLoop()
Returns the detector itself.
~GUIInstantInductLoop()
Destructor.
The gui-version of the MSInstantInductLoop.
A MSInductLoop-visualiser.
Static storage of an output device and its base (abstract) implementation.
Definition: OutputDevice.h:71
#define SUMOReal
Definition: config.h:213
Position myFGPosition
The position in full-geometry mode.
Representation of a lane in the micro simulation.
Definition: MSLane.h:79
A window containing a gl-object&#39;s parameter.
virtual GUIDetectorWrapper * buildDetectorGUIRepresentation()
Returns this detector&#39;s visualisation-wrapper.