00001 #ifndef TEXPLODERPROC_H 00002 #define TEXPLODERPROC_H 00003 00004 #include "TCBMBeamtimeProc.h" 00005 #include "TMbsCrateEvent.h" 00006 #include "TBeamMonitorEvent.h" 00007 #include "TExploderEvent.h" 00008 #include "TExploderParam.h" 00009 00010 #include "TGo4Picture.h" 00011 #include "TH1.h" 00012 #include "TH2.h" 00013 00014 00015 class TGo4EventElement; 00016 class TGo4MbsSubEvent; 00017 00018 00019 00020 00021 // N.Kurz, EE, GSI, 15-Jan-2010 00022 // JAM - put to CBM beamtime framework 11-Nov-2011 00023 00024 // NOTE: all definitions are now in TExploderEvent.h 00025 //------------------------------------------------------------------------------------------------------- 00026 00027 class TExploderProc : public TCBMBeamtimeProc { 00028 00029 00030 public: 00031 00032 TExploderProc(const char* name = 0); 00033 virtual ~TExploderProc(); 00034 00035 virtual void InitEvent(TGo4EventElement*); 00036 virtual void ProcessSubevent(TGo4MbsSubEvent* subevt); 00037 00038 TH1 *h_hitpat [MAX_SFP][MAX_EXP][MAX_NXY]; 00039 TH1 *h_hitpatkw [MAX_SFP][MAX_EXP][MAX_NXY]; 00040 TH1 *h_diff_epo_trg [MAX_SFP][MAX_EXP][MAX_NXY]; 00041 00042 TH1 *h_diff_tim_ch0_ch7 [MAX_SFP][MAX_EXP][MAX_NXY]; 00043 TH1 *h_diff_tim_ch0_ch15 [MAX_SFP][MAX_EXP][MAX_NXY]; 00044 TH1 *h_diff_tim_ch0_ch23 [MAX_SFP][MAX_EXP][MAX_NXY]; 00045 TH1 *h_diff_tim_ch0_ch31 [MAX_SFP][MAX_EXP][MAX_NXY]; 00046 TH1 *h_diff_tim_ch0_ch39 [MAX_SFP][MAX_EXP][MAX_NXY]; 00047 TH1 *h_diff_tim_ch0_ch47 [MAX_SFP][MAX_EXP][MAX_NXY]; 00048 TH1 *h_diff_tim_ch0_ch55 [MAX_SFP][MAX_EXP][MAX_NXY]; 00049 TH1 *h_diff_tim_ch0_ch63 [MAX_SFP][MAX_EXP][MAX_NXY]; 00050 TH1 *h_diff_tim_ch0_ch71 [MAX_SFP][MAX_EXP][MAX_NXY]; 00051 TH1 *h_diff_tim_ch0_ch79 [MAX_SFP][MAX_EXP][MAX_NXY]; 00052 TH1 *h_diff_tim_ch0_ch87 [MAX_SFP][MAX_EXP][MAX_NXY]; 00053 TH1 *h_diff_tim_ch0_ch95 [MAX_SFP][MAX_EXP][MAX_NXY]; 00054 TH1 *h_diff_tim_ch0_ch103 [MAX_SFP][MAX_EXP][MAX_NXY]; 00055 TH1 *h_diff_tim_ch0_ch111 [MAX_SFP][MAX_EXP][MAX_NXY]; 00056 TH1 *h_diff_tim_ch0_ch119 [MAX_SFP][MAX_EXP][MAX_NXY]; 00057 TH1 *h_diff_tim_ch0_ch127 [MAX_SFP][MAX_EXP][MAX_NXY]; 00058 00059 TH1 *h_ndiff_tim_ch0_ch0 [MAX_SFP][MAX_EXP][MAX_NXY]; 00060 TH1 *h_ndiff_tim_ch7_ch7 [MAX_SFP][MAX_EXP][MAX_NXY]; 00061 TH1 *h_ndiff_tim_ch15_ch15 [MAX_SFP][MAX_EXP][MAX_NXY]; 00062 TH1 *h_ndiff_tim_ch23_ch23 [MAX_SFP][MAX_EXP][MAX_NXY]; 00063 TH1 *h_ndiff_tim_ch31_ch31 [MAX_SFP][MAX_EXP][MAX_NXY]; 00064 TH1 *h_ndiff_tim_ch39_ch39 [MAX_SFP][MAX_EXP][MAX_NXY]; 00065 TH1 *h_ndiff_tim_ch47_ch47 [MAX_SFP][MAX_EXP][MAX_NXY]; 00066 TH1 *h_ndiff_tim_ch55_ch55 [MAX_SFP][MAX_EXP][MAX_NXY]; 00067 TH1 *h_ndiff_tim_ch63_ch63 [MAX_SFP][MAX_EXP][MAX_NXY]; 00068 TH1 *h_ndiff_tim_ch71_ch71 [MAX_SFP][MAX_EXP][MAX_NXY]; 00069 TH1 *h_ndiff_tim_ch79_ch79 [MAX_SFP][MAX_EXP][MAX_NXY]; 00070 TH1 *h_ndiff_tim_ch87_ch87 [MAX_SFP][MAX_EXP][MAX_NXY]; 00071 TH1 *h_ndiff_tim_ch95_ch95 [MAX_SFP][MAX_EXP][MAX_NXY]; 00072 TH1 *h_ndiff_tim_ch103_ch103[MAX_SFP][MAX_EXP][MAX_NXY]; 00073 TH1 *h_ndiff_tim_ch111_ch111[MAX_SFP][MAX_EXP][MAX_NXY]; 00074 TH1 *h_ndiff_tim_ch119_ch119[MAX_SFP][MAX_EXP][MAX_NXY]; 00075 TH1 *h_ndiff_tim_ch127_ch127[MAX_SFP][MAX_EXP][MAX_NXY]; 00076 00077 TH1 *h_trg_time_l16[MAX_SFP][MAX_EXP][MAX_NXY]; 00078 00079 TH1 *h_charge [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00080 TH1 *h_time [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00081 TH1 *h_time_2 [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00082 TH1 *h_time_12[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00083 00084 00085 // TH2 *h_t_from_1st_hit_in_ch_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00086 TH2 *h_t_from_1st_hit_in_xy_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00087 TH2 *h_ampl_vs_mult[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00088 TH2 *h_ampl_vs_ampl[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00089 TH2 *h_ampl_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00090 TH2 *h_epo_vs_trig_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00091 TH2 *h_epo_vs_trig_lowmult_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00092 TH2 *h_epo_vs_trig_vs_chl[MAX_SFP][MAX_EXP][MAX_NXY]; 00093 TH2 *h_epo_vs_trig_vs_chh[MAX_SFP][MAX_EXP][MAX_NXY]; 00094 TH2 *h_hitpat_vs_mult[MAX_SFP][MAX_EXP][MAX_NXY]; 00095 TH2 *h_hitpat_vs_mult_range[MAX_SFP][MAX_EXP][MAX_NXY]; 00096 TH2 *h_hitpat_2dim[MAX_EXP]; 00097 TH2 *h_hitpat_2dim_lowmult[MAX_EXP]; 00098 TH2 *h_mult_2dim[MAX_EXP]; 00099 // TH2 *h_t_from_1st_hit_in_ex_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00100 // TH2 *h_t_from_1st_hit_in_sf_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00101 // TH2 *h_t_from_1st_hit_in_al_vs_ch[MAX_SFP][MAX_EXP][MAX_NXY]; 00102 //TH1 *h_diff_epo[MAX_SFP][MAX_EXP][MAX_NXY]; 00103 //TH1 *h_diff_epo_1[MAX_SFP][MAX_EXP][MAX_NXY]; 00104 TH1 *h_t_from_1st_hit_e3_adc[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00105 TH1 *h_t_from_1st_hit_e3[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00106 TH1 *h_t_from_1st_hit_e3ch37_adc[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00107 TH1 *h_t_from_1st_hit_e3ch37[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00108 TH1 *h_t_from_1st_hit_e3ch77_adc[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00109 TH1 *h_t_from_1st_hit_e3ch77[MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00110 00111 TH1 *h_chargekw [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00112 TH1 *h_chargecoinc [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00113 TH1 *h_chargecoinc1 [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00114 TH1 *h_chargecoincsqr [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00115 TH1 *h_chargecoincsqr1 [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00116 TH1 *h_chargekw51 [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00117 TH1 *h_chargekw51T [MAX_SFP][MAX_EXP][MAX_NXY][MAX_CHA]; 00118 00119 TH1 *h_mult [MAX_SFP][MAX_EXP][MAX_NXY]; 00120 TH1 *h_mult_wtimewind [MAX_SFP][MAX_EXP][MAX_NXY]; 00121 TH1 *h_trg_epo_short[MAX_EXP] ; 00122 TH1 *h_trg_epo_shorth[MAX_EXP] ; 00123 TH1 *h_trg_epo_shortl[MAX_EXP] ; 00124 00125 00126 protected: 00127 00128 TExploderParam * fPar; 00129 TExploderEvent * fOutputEvent; 00130 00131 protected: 00132 00133 ClassDef(TExploderProc,1) 00134 }; 00135 00136 #endif //TUNPACKPROCESSOR_H 00137