00001 #ifndef PLOTAMPVSMUSCTDIFF_H_ 00002 #define PLOTAMPVSMUSCTDIFF_H_ 00003 00004 #include "BaseModule.h" 00005 #include "IdSource.h" 00006 class TGlobalData; 00007 class TSetupData; 00008 class TH2F; 00009 namespace modules {class options;} 00010 00024 class PlotAmpVsMuScTDiff : public BaseModule { 00025 typedef std::vector<IDs::source> SourceVector; 00026 00027 public: 00032 PlotAmpVsMuScTDiff(modules::options* opts); 00035 ~PlotAmpVsMuScTDiff(); 00036 00037 private: 00045 virtual int ProcessEntry(TGlobalData *gData,const TSetupData *gSetup); 00053 virtual int BeforeFirstEntry(TGlobalData* gData,const TSetupData *setup); 00061 virtual int AfterLastEntry(TGlobalData* gData,const TSetupData *setup); 00062 00063 private: 00064 struct Plots{ 00065 TH2F *coarse, *fine; 00066 }; 00067 00068 Plots GetHistogram(const IDs::source& detector, const IDs::source& muSc); 00069 00070 00071 std::map<std::string, Plots> fPlots; 00072 00073 SourceVector fMuScSources; 00074 SourceVector fNotMuScSources; 00075 00076 }; 00077 00078 #endif //PLOTAMPVSMUSCTDIFF_H_