SUMO - Simulation of Urban MObility
|
00001 /****************************************************************************/ 00009 // A lane area vehicles can halt at (gui-version) 00010 /****************************************************************************/ 00011 // SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/ 00012 // Copyright (C) 2001-2012 DLR (http://www.dlr.de/) and contributors 00013 /****************************************************************************/ 00014 // 00015 // This file is part of SUMO. 00016 // SUMO is free software: you can redistribute it and/or modify 00017 // it under the terms of the GNU General Public License as published by 00018 // the Free Software Foundation, either version 3 of the License, or 00019 // (at your option) any later version. 00020 // 00021 /****************************************************************************/ 00022 #ifndef GUIBusStop_h 00023 #define GUIBusStop_h 00024 00025 00026 // =========================================================================== 00027 // included modules 00028 // =========================================================================== 00029 #ifdef _MSC_VER 00030 #include <windows_config.h> 00031 #else 00032 #include <config.h> 00033 #endif 00034 00035 #include <vector> 00036 #include <string> 00037 #include <utils/common/Command.h> 00038 #include <utils/common/VectorHelper.h> 00039 #include <utils/geom/PositionVector.h> 00040 #include <microsim/trigger/MSBusStop.h> 00041 #include <utils/gui/globjects/GUIGlObject.h> 00042 #include <utils/gui/globjects/GUIGlObject_AbstractAdd.h> 00043 #include <utils/gui/globjects/GUIGLObjectPopupMenu.h> 00044 #include <utils/geom/Position.h> 00045 #include <gui/GUIManipulator.h> 00046 #include <utils/foxtools/FXRealSpinDial.h> 00047 00048 00049 // =========================================================================== 00050 // class declarations 00051 // =========================================================================== 00052 class MSNet; 00053 class MSLane; 00054 class GUIManipulator; 00055 00056 00057 // =========================================================================== 00058 // class definitions 00059 // =========================================================================== 00071 class GUIBusStop : public MSBusStop, public GUIGlObject_AbstractAdd { 00072 public: 00081 GUIBusStop(const std::string& id, 00082 const std::vector<std::string> &lines, MSLane& lane, 00083 SUMOReal frompos, SUMOReal topos) ; 00084 00085 00087 ~GUIBusStop() ; 00088 00089 00090 00092 00093 00101 GUIGLObjectPopupMenu* getPopUpMenu(GUIMainWindow& app, 00102 GUISUMOAbstractView& parent) ; 00103 00104 00114 GUIParameterTableWindow* getParameterWindow(GUIMainWindow& app, 00115 GUISUMOAbstractView& parent) ; 00116 00117 00123 Boundary getCenteringBoundary() const ; 00124 00125 00130 void drawGL(const GUIVisualizationSettings& s) const ; 00132 00133 00134 private: 00136 std::vector<SUMOReal> myFGShapeRotations; 00137 00139 std::vector<SUMOReal> myFGShapeLengths; 00140 00142 PositionVector myFGShape; 00143 00145 Position myFGSignPos; 00146 00148 SUMOReal myFGSignRot; 00149 00150 00151 }; 00152 00153 00154 #endif 00155 00156 /****************************************************************************/ 00157