00001 #ifndef CACHEREM_H
00002 #define CACHEREM_H
00003 #include <map>
00004 #include <vector>
00005 #include "rte.cc"
00006 #include "Rtypes.h"
00007
00008 class CacherEM
00009 {
00010
00011 public:
00012
00013 CacherEM();
00014 ~CacherEM();
00015 std::map<Int_t,spef> GetPSMap();
00016 std::vector<rte> GetRTMap();
00017 Double_t GetSumE();
00018 Double_t *GetPars();
00019 void StorePS(Int_t,Double_t*,std::map<Int_t,spef>);
00020 void StoreRT(Int_t,Double_t*,std::vector<rte>,Double_t);
00021 Bool_t ValidPS(Double_t*);
00022 Bool_t ValidRT(Double_t*);
00023 void PrintPSMap();
00024 void PrintRTMap();
00025 void ClearCache();
00026 void ClearPSCache();
00027
00028 private:
00029
00030 Int_t fn;
00031 Double_t *fpars;
00032 std::map<Int_t,spef> fpscache;
00033 std::vector<rte> frtcache;
00034 Double_t fsumE;
00035
00036 };
00037 #endif //CACHEREM_H