00001
00002
00003
00004
00005
00006 #ifndef STAR_StRFEmcTrigMaker
00007 #define STAR_StRFEmcTrigMaker
00008
00018 #ifndef StMaker_H
00019 #include "StMaker.h"
00020 #include "TrigDims.h"
00021 #endif
00022
00023
00024 class TH1F;
00025 class StMuDst;
00026 class StMuEmcCollection;
00027 class StEmcGeom;
00028 class StEvent;
00029 class StMuEvent;
00030 class StBbcTriggerDetector;
00031 class StEmcCollection;
00032
00033 class StRFEmcTrigMaker : public StMaker {
00034
00035 private:
00036 StEmcGeom *emcGeom;
00037 StMuEvent *muEvent;
00038 StEvent *stEvent;
00039 StEmcCollection *stEmcCol;
00040 StMuEmcCollection *muEmcCol;
00041 StBbcTriggerDetector *bbcCol;
00042
00043 int DataMode;
00044 int det;
00045 int Bmod;
00046 int Bsub;
00047 int Beta;
00048 int BTowADC;
00049 int NumETow;
00050 int Esec;
00051 int Esub;
00052 int Eeta;
00053 int ETowADC;
00054 int bbcTrig;
00055 int BBCadc[BBCadcNum];
00056
00057 int BHTmaxt;
00058 int BJPmaxt;
00059 int BJPsumt;
00060 int EHTmaxt;
00061 int EJPmaxt;
00062 int EJPsumt;
00063
00064 int jpBsum[BemcJP];
00065 int jpBmax[BemcJP];
00066 int jpB_hit_num[BemcJP];
00067 int tpBsum[BemcTP];
00068 int tpBmax[BemcTP];
00069
00070 int jpEsum[EemcJP];
00071 int jpEmax[EemcJP];
00072 int jpE_hit_num[EemcJP];
00073 int tpEsum[EemcTP];
00074 int tpEmax[EemcTP];
00075
00076 TH1F *ha[8];
00077 void initHisto();
00078 void fillHisto();
00079
00080 void Sum(int *,int *);
00081 void Max(int *,int *);
00082 void unpackEmcFromMu();
00083 void unpackEmcFromSt();
00084 void unpackBBC();
00085
00086 bool activeBBC;
00087
00088 protected:
00089
00090 public:
00091 StRFEmcTrigMaker(const char *name="RFTrig");
00092 virtual ~StRFEmcTrigMaker();
00093 virtual Int_t Init();
00094 virtual Int_t Make();
00095 virtual void Clear(const char *opt=0);
00096
00097 void useMuDst() { DataMode=0;}
00098 void useStEvent() { DataMode=1;}
00099 Int_t getBBCtrig();
00100 Int_t getBEMCtrigHT(int);
00101 Int_t getBEMCtrigJP(int);
00102 Int_t getBEMCtrigTOT(int);
00103 Int_t getEEMCtrigHT(int);
00104 Int_t getEEMCtrigJP(int);
00105 Int_t getEEMCtrigTOT(int);
00106 Int_t getBEMC_HT_ADC();
00107 Int_t getBEMC_JP_ADC();
00108 Int_t getBEMC_TOT_ADC();
00109 Int_t getEEMC_HT_ADC();
00110 Int_t getEEMC_JP_ADC();
00111 Int_t getEEMC_TOT_ADC();
00112
00113 void requireBBC(){ activeBBC=true;}
00114
00115 virtual const char *GetCVS() const {
00116 static const char cvs[]="Tag $Name: $ $Id: StRFEmcTrigMaker.h,v 1.4 2004/08/18 19:52:49 balewski Exp $ built "__DATE__" "__TIME__ ;
00117 return cvs;
00118 }
00119
00120 ClassDef(StRFEmcTrigMaker, 1)
00121 };
00122
00123 #endif
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135