SUMO - Simulation of Urban MObility
|
00001 /****************************************************************************/ 00009 // Base class for additional objects (detectors etc.) 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 GUIGlObject_AbstractAdd_h 00023 #define GUIGlObject_AbstractAdd_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 "GUIGlObjectTypes.h" 00036 #include "GUIGlObject.h" 00037 #include <vector> 00038 #include <map> 00039 00040 00041 // =========================================================================== 00042 // class definitions 00043 // =========================================================================== 00047 class GUIGlObject_AbstractAdd : 00048 public GUIGlObject { 00049 public: 00050 GUIGlObject_AbstractAdd( 00051 const std::string& prefix, 00052 GUIGlObjectType type, 00053 const std::string& id); 00054 00055 ~GUIGlObject_AbstractAdd() ; 00056 00058 static void clearDictionary(); 00059 00061 static GUIGlObject_AbstractAdd* get(const std::string& name); 00062 00064 static const std::vector<GUIGlObject_AbstractAdd*> &getObjectList(); 00065 00067 static std::vector<GUIGlID> getIDList(); 00068 00069 00070 protected: 00072 static std::map<std::string, GUIGlObject_AbstractAdd*> myObjects; 00073 00075 static std::vector<GUIGlObject_AbstractAdd*> myObjectList; 00076 00077 }; 00078 00079 00080 #endif 00081 00082 /****************************************************************************/ 00083