Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
GUIE3Collector.h
Go to the documentation of this file.
1/****************************************************************************/
2// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3// Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.
4// This program and the accompanying materials are made available under the
5// terms of the Eclipse Public License 2.0 which is available at
6// https://www.eclipse.org/legal/epl-2.0/
7// This Source Code may also be made available under the following Secondary
8// Licenses when the conditions for such availability set forth in the Eclipse
9// Public License 2.0 are satisfied: GNU General Public License, version 2
10// or later which is available at
11// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13/****************************************************************************/
20// The gui-version of a MSE3Collector
21/****************************************************************************/
22#pragma once
23#include <config.h>
24
25#include <string>
26#include <vector>
27#include "GUIDetectorWrapper.h"
31
32
33// ===========================================================================
34// class definitions
35// ===========================================================================
44public:
46 GUIE3Collector(const std::string& id,
47 const CrossSectionVector& entries, const CrossSectionVector& exits,
48 double haltingSpeedThreshold,
49 SUMOTime haltingTimeThreshold,
50 const std::string name, const std::string& vTypes,
51 const std::string& nextEdges,
52 int detectPersons, bool openEntry, bool expectArrival);
53
56
57
61 const CrossSectionVector& getEntries() const;
62
63
67 const CrossSectionVector& getExits() const;
68
69
75
76
77public:
83 public:
85 MyWrapper(GUIE3Collector& detector);
86
88 ~MyWrapper();
89
90
92
93
102
104 double getExaggeration(const GUIVisualizationSettings& s) const override;
105
111 Boundary getCenteringBoundary() const override;
112
117 void drawGL(const GUIVisualizationSettings& s) const override;
119
120
123
124
125 protected:
135
136 protected:
139
141 void drawSingleCrossing(const Position& pos, double rot,
142 double upscale) const;
143
144 private:
147
150
152 typedef std::vector<SingleCrossingDefinition> CrossingDefinitions;
153
156
159
160 };
161
162};
long long int SUMOTime
Definition GUI.h:36
std::vector< MSCrossSection > CrossSectionVector
A class that stores a 2D geometrical boundary.
Definition Boundary.h:39
std::vector< SingleCrossingDefinition > CrossingDefinitions
Definition of a list of cross (entry/exit-point) positions.
SingleCrossingDefinition buildDefinition(const MSCrossSection &section)
Builds the description about the position of the entry/exit point.
Boundary getCenteringBoundary() const override
Returns the boundary to which the view shall be centered in order to show the object.
GUIE3Collector & myDetector
The wrapped detector.
void drawSingleCrossing(const Position &pos, double rot, double upscale) const
Draws a single entry/exit point.
GUIE3Collector & getDetector()
Returns the detector itself.
double getExaggeration(const GUIVisualizationSettings &s) const override
return exaggeration associated with this GLObject
CrossingDefinitions myExitDefinitions
The list of exit positions.
CrossingDefinitions myEntryDefinitions
The list of entry positions.
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent) override
Returns an own parameter window.
void drawGL(const GUIVisualizationSettings &s) const override
Draws the object.
Boundary myBoundary
The detector's boundary.
The gui-version of the MSE3Collector.
~GUIE3Collector()
Destructor.
const CrossSectionVector & getExits() const
Returns the list of exit points.
GUIDetectorWrapper * buildDetectorGUIRepresentation()
Returns the wrapper for this detector.
const CrossSectionVector & getEntries() const
Returns the list of entry points.
A window containing a gl-object's parameter.
Stores the information about how to visualize structures.
A simple description of a position on a lane (crossing of a lane)
A detector of vehicles passing an area between entry/exit points.
A point in 2D or 3D with translation and scaling methods.
Definition Position.h:37
Representation of a single crossing point.