00001
00002 #ifndef FARDETSTRIPLISTMODULE_H
00003 #define FARDETSTRIPLISTMODULE_H
00004
00005 #include "TFile.h"
00006 #include "TTree.h"
00007 #include "TString.h"
00008 #include "TObject.h"
00009
00010 #include "JobControl/JobCModule.h"
00011
00012 class JobCommand;
00013 class MomNavigator;
00014 class FarDetStripListHandle;
00015
00016 class FarDetStripListModule : public JobCModule, public TObject
00017 {
00018 public:
00019 FarDetStripListModule();
00020 ~FarDetStripListModule();
00021
00022 void BeginJob();
00023 JobCResult Reco(MomNavigator *mom);
00024 JobCResult Ana(const MomNavigator* mom);
00025 const Registry &DefaultConfig() const;
00026 void Config(const Registry &r);
00027 void HandleCommand(JobCommand *command);
00028 void EndJob();
00029
00030 private:
00031 TFile* fFarDetStripFile;
00032 TTree* fFarDetStripTree;
00033
00034 Int_t run,snarl;
00035 Int_t timeframe,time,date;
00036 Int_t plane,strip,ndigits,view,xtalk;
00037
00038 Int_t crateE,varcE,vmmE,vaadcE,vachipE,vachannelE;
00039 Double_t CTrawE,CTcalE,QrawE,QcalE,QpeE,QsiglinE,QsigcorrE,QsigmapE;
00040 Double_t fibreE,greenE,clearE,pigtailE;
00041
00042 Int_t crateW,varcW,vmmW,vaadcW,vachipW,vachannelW;
00043 Double_t CTrawW,CTcalW,QrawW,QcalW,QpeW,QsiglinW,QsigcorrW,QsigmapW;
00044 Double_t fibreW,greenW,clearW,pigtailW;
00045
00046 Double_t halflength;
00047
00048 Double_t Ltrk;
00049 Double_t Zstrp,Tstrp;
00050 Double_t dSfit,Tfit,Lfit,CTfit;
00051 Double_t U,V,X,Y,Z;
00052 Double_t pu,pv,pz;
00053 Double_t erru,errv;
00054 Int_t nplns;
00055
00056 TString fListIn,fListOut;
00057 Int_t fMinPlane,fMaxPlane;
00058 Int_t fFilterOnOff;
00059 Int_t fFilterMinStrips;
00060 Int_t fFilter;
00061
00062 TObjArray fStrpList[500];
00063
00064 Int_t ApplyFilter(FarDetStripListHandle* csh);
00065
00066
00067 ClassDef(FarDetStripListModule,1)
00068 };
00069
00070 #endif