Eclipse SUMO - Simulation of Urban MObility
GUICompleteSchemeStorage.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 /****************************************************************************/
15 // Storage for available visualization settings
16 /****************************************************************************/
17 #ifndef GUICompleteSchemeStorage_h
18 #define GUICompleteSchemeStorage_h
19 
20 
21 // ===========================================================================
22 // included modules
23 // ===========================================================================
24 #include <config.h>
25 
26 #include <string>
27 #include <vector>
28 #include <algorithm>
29 #include <map>
31 
32 
33 // ===========================================================================
34 // class definitions
35 // ===========================================================================
41 public:
44 
45 
48 
49 
53  void add(const GUIVisualizationSettings& scheme);
54 
55 
60  GUIVisualizationSettings& get(const std::string& name);
61 
62 
67 
68 
73  bool contains(const std::string& name) const;
74 
75 
79  void remove(const std::string& name);
80 
81 
85  void setDefault(const std::string& name);
86 
87 
91  const std::vector<std::string>& getNames() const;
92 
93 
97  int getNumInitialSettings() const;
98 
99 
103  void init(FXApp* app, bool netedit = false);
104 
105 
109  void writeSettings(FXApp* app);
110 
111 
117  void saveViewport(const double x, const double y, const double z, const double rot);
118 
119 
123  void setViewport(GUISUMOAbstractView* view);
124 
125 
126 protected:
128  std::map<std::string, GUIVisualizationSettings> mySettings;
129 
131  std::vector<std::string> mySortedSchemeNames;
132 
134  std::string myDefaultSettingName;
135 
138 
141  double myRotation;
142 
143 
144 };
145 
147 
148 
149 #endif
150 
151 /****************************************************************************/
152 
GUICompleteSchemeStorage::myDefaultSettingName
std::string myDefaultSettingName
Name of the default setting.
Definition: GUICompleteSchemeStorage.h:134
GUICompleteSchemeStorage::getDefault
GUIVisualizationSettings & getDefault()
Returns the default scheme.
Definition: GUICompleteSchemeStorage.cpp:68
GUISUMOAbstractView
Definition: GUISUMOAbstractView.h:72
GUICompleteSchemeStorage::myLookAt
Position myLookAt
Definition: GUICompleteSchemeStorage.h:140
GUICompleteSchemeStorage::writeSettings
void writeSettings(FXApp *app)
Writes the current scheme into the registry.
Definition: GUICompleteSchemeStorage.cpp:204
GUICompleteSchemeStorage::remove
void remove(const std::string &name)
Removes the setting with the given name.
Definition: GUICompleteSchemeStorage.cpp:80
GUICompleteSchemeStorage::GUICompleteSchemeStorage
GUICompleteSchemeStorage()
Constructor.
Definition: GUICompleteSchemeStorage.cpp:44
GUICompleteSchemeStorage::add
void add(const GUIVisualizationSettings &scheme)
Adds a visualization scheme.
Definition: GUICompleteSchemeStorage.cpp:52
GUICompleteSchemeStorage::myLookFrom
Position myLookFrom
The default viewport.
Definition: GUICompleteSchemeStorage.h:140
GUICompleteSchemeStorage::myNumInitialSettings
int myNumInitialSettings
The number of settings which were present at startup.
Definition: GUICompleteSchemeStorage.h:137
GUICompleteSchemeStorage::getNames
const std::vector< std::string > & getNames() const
Returns a list of stored settings names.
Definition: GUICompleteSchemeStorage.cpp:99
GUISUMOAbstractView.h
GUICompleteSchemeStorage::getNumInitialSettings
int getNumInitialSettings() const
Returns the number of initial settings.
Definition: GUICompleteSchemeStorage.cpp:105
Position
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:38
GUICompleteSchemeStorage::setDefault
void setDefault(const std::string &name)
Makes the scheme with the given name the default.
Definition: GUICompleteSchemeStorage.cpp:90
gSchemeStorage
GUICompleteSchemeStorage gSchemeStorage
Definition: GUICompleteSchemeStorage.cpp:38
GUICompleteSchemeStorage
Storage for available visualization settings.
Definition: GUICompleteSchemeStorage.h:40
GUICompleteSchemeStorage::~GUICompleteSchemeStorage
~GUICompleteSchemeStorage()
Destructor.
Definition: GUICompleteSchemeStorage.cpp:47
GUICompleteSchemeStorage::myRotation
double myRotation
Definition: GUICompleteSchemeStorage.h:141
GUICompleteSchemeStorage::saveViewport
void saveViewport(const double x, const double y, const double z, const double rot)
Makes the given viewport the default.
Definition: GUICompleteSchemeStorage.cpp:227
config.h
GUICompleteSchemeStorage::init
void init(FXApp *app, bool netedit=false)
Initialises the storage with some default settings.
Definition: GUICompleteSchemeStorage.cpp:111
GUIVisualizationSettings
Stores the information about how to visualize structures.
Definition: GUIVisualizationSettings.h:345
GUICompleteSchemeStorage::mySettings
std::map< std::string, GUIVisualizationSettings > mySettings
A map of settings referenced by their names.
Definition: GUICompleteSchemeStorage.h:128
GUICompleteSchemeStorage::setViewport
void setViewport(GUISUMOAbstractView *view)
Sets the default viewport.
Definition: GUICompleteSchemeStorage.cpp:234
GUICompleteSchemeStorage::mySortedSchemeNames
std::vector< std::string > mySortedSchemeNames
List of known setting names.
Definition: GUICompleteSchemeStorage.h:131
GUICompleteSchemeStorage::contains
bool contains(const std::string &name) const
Returns the information whether a setting with the given name is stored.
Definition: GUICompleteSchemeStorage.cpp:74
GUICompleteSchemeStorage::get
GUIVisualizationSettings & get(const std::string &name)
Returns the named scheme.
Definition: GUICompleteSchemeStorage.cpp:62