SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GUIShapeContainer.h
Go to the documentation of this file.
1 /****************************************************************************/
8 // Storage for geometrical objects extended by mutexes
9 /****************************************************************************/
10 // SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/
11 // Copyright (C) 2001-2012 DLR (http://www.dlr.de/) and contributors
12 /****************************************************************************/
13 //
14 // This file is part of SUMO.
15 // SUMO is free software: you can redistribute it and/or modify
16 // it under the terms of the GNU General Public License as published by
17 // the Free Software Foundation, either version 3 of the License, or
18 // (at your option) any later version.
19 //
20 /****************************************************************************/
21 #ifndef GUIShapeContainer_h
22 #define GUIShapeContainer_h
23 
24 
25 // ===========================================================================
26 // included modules
27 // ===========================================================================
28 #ifdef _MSC_VER
29 #include <windows_config.h>
30 #else
31 #include <config.h>
32 #endif
33 
37 
38 
39 // ===========================================================================
40 // class declarations
41 // ===========================================================================
42 class SUMORTree;
43 class Position;
44 
45 
46 // ===========================================================================
47 // class definitions
48 // ===========================================================================
55 public:
58 
59 
61  virtual ~GUIShapeContainer() ;
62 
63 
64 
74  virtual bool addPoI(const std::string& name, int layer, const std::string& type,
75  const RGBColor& c, const Position& pos) ;
76 
77 
87  virtual bool addPolygon(const std::string& name, int layer,
88  const std::string& type, const RGBColor& c, bool filled, const PositionVector& shape) ;
89 
90 
91 
98  bool removePolygon(int layer, const std::string& id) ;
99 
100 
107  bool removePoI(int layer, const std::string& id) ;
108 
109 
110 
117  void movePoI(int layer, const std::string& id, const Position& pos) ;
118 
119 
125  void reshapePolygon(int layer, const std::string& id, const PositionVector& shape) ;
126 
127 
129  std::vector<GUIGlID> getShapeIDs() const;
130 
131 
132 private:
135 
138 
139 };
140 
141 
142 #endif
143 
144 /****************************************************************************/
145