00001 //================================================= 00002 // 00003 // EPileupMap.h 00004 // 00005 // Author: Jonathan Couchman 00006 // 00007 // 00008 //=================================================== 00009 #ifndef ATLFAST_EPILEUPMAP_H 00010 #define ATLFAST_EPILEUPMAP_H 00011 00012 #ifndef STD_VECTOR_H 00013 #include <vector> 00014 #define STD_VECTOR_H 00015 #endif 00016 00017 #ifndef STD_MAP_H 00018 #include<map> 00019 #define STD_MAP_H 00020 #endif 00021 00022 #ifndef STD_STRING_H 00023 #include<string> 00024 #define STD_STRING_H 00025 #endif 00026 00027 namespace Atlfast{ 00028 00029 class EPileupDeposit; 00030 00040 class EPileupMap { 00041 public: 00043 EPileupMap(int); 00045 ~EPileupMap(); 00048 void fillMap(); 00050 std::vector<EPileupDeposit*>* getEMMap() const {return m_emPileupMap;} 00052 std::vector<EPileupDeposit*>* getHadMap() const {return m_hadPileupMap;} 00053 00054 private: 00056 void makeCellMap(); 00058 void setInputFile(); 00060 void emptyMap(); 00062 std::vector<EPileupDeposit*>* m_hadPileupMap; 00064 std::vector<EPileupDeposit*>* m_emPileupMap; 00066 std::map<int,double>* m_phiMap; 00068 std::map<int,double>* m_etaMap; 00070 std::string m_pileupFile; 00072 std::string m_fileDir; 00074 int m_nFiles; 00075 00076 }; 00077 } 00078 #endif