00001 00002 #ifndef _Q_TOWER_ARRAY_HH_ 00003 #define _Q_TOWER_ARRAY_HH_ 00004 00005 00006 #include <map> 00007 #include <string> 00008 00009 class QCrystal; 00010 class QTower; 00011 00012 #include "QGeomVector.hh" 00013 00014 00022 class QTowerArray { 00023 public: 00025 QTowerArray(); 00026 00028 virtual ~QTowerArray(); 00029 00035 const QGeomVector& GetPosition() const { return fPosition; } 00036 00044 bool LoadMap(const std::string& fromWhere); 00045 00050 const std::map<int, QTower>& GetTowers() const; 00051 00058 const QTower* GetTower(int towerId) const; 00059 00066 const QCrystal* GetCrystal(int lgChannel) const; 00067 00068 private: 00069 00071 std::map<int, QTower> fTowers; 00072 00074 QGeomVector fPosition; 00075 }; 00076 #endif