00001 #ifndef TMBSCRATEPROC_H 00002 #define TMBSCRATEPROC_H 00003 00004 #include "TCBMBeamtimeProc.h" 00005 00006 #include "TMbsCrateEvent.h" 00007 #include "TMbsCrateParam.h" 00008 #include "TGo4Picture.h" 00009 #include "TH1.h" 00010 #include "TH2.h" 00011 #include "TLatex.h" 00012 #include "T1290Data.h" 00013 00014 class TGo4EventElement; 00015 class TGo4MbsSubEvent; 00016 00017 00018 class TMbsCrateProc : public TCBMBeamtimeProc { 00019 00020 friend class TCBMBeamtimeProc; 00021 00022 public: 00023 00024 TMbsCrateProc(const char* name = 0); 00025 virtual ~TMbsCrateProc(); 00026 00027 virtual void InitEvent(TGo4EventElement*); // event processing function 00028 virtual void ProcessSubevent(TGo4MbsSubEvent* subevt); 00029 00030 protected: 00031 00032 void Process1182(int num, int* pdata, int len); 00033 00034 void ProcessMADC(int num, int* pdata, int len); 00035 00036 void Process1290(int num, int* pdata, unsigned int len); 00037 00038 void Processv560(int* pdata, unsigned int len); 00039 00040 void Processv550(int* pdata, unsigned int len); 00041 00042 TMbsCrateParam * fPar; 00043 TMbsCrateEvent * fOutputEvent; 00044 00045 TH1* f1182h[MAX_1182][NUM_1182_CH]; 00046 TH1* f1182Pulserh[MAX_1182][NUM_1182_CH]; 00047 00048 /* MADCs */ 00049 TH1* fMadc_adc[MAX_MADC][N_MADC_CHA]; 00050 TH1* fMadc_trace[MAX_MADC]; 00051 TGo4Picture * pMadc_overview[MAX_MADC]; 00052 00053 /* TDCs */ 00054 T1290Proc fTDC[MAX_1290]; 00055 00056 /* v550 si strip readout:*/ 00057 TH1* f550h_fifo0_trace; 00058 TH1* f550h_fifo0_acc; 00059 TH1* f550h_fifo1_trace; 00060 TH1* f550h_fifo1_acc; 00061 00062 ClassDef(TMbsCrateProc,2) 00063 }; 00064 00065 #endif //TUNPACKPROCESSOR_H 00066