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;} 00051 std::vector<EPileupDeposit*>* getHadMap() const {return m_hadPileupMap;} 00052 00053 private: 00055 void makeCellMap(); 00057 void setInputFile(); 00059 void emptyMap(); 00061 std::vector<EPileupDeposit*>* m_hadPileupMap; 00063 std::vector<EPileupDeposit*>* m_emPileupMap; 00065 std::map<int,double>* m_phiMap; 00067 std::map<int,double>* m_etaMap; 00069 std::string m_pileupFile; 00071 std::string m_fileDir; 00073 int m_nFiles; 00074 00075 }; 00076 } 00077 #endif