00001
00002 #ifndef FARDETSLICELISTMODULE_H
00003 #define FARDETSLICELISTMODULE_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 FarDetSliceListHandle;
00015
00016 class FarDetSliceListModule : public JobCModule, public TObject
00017 {
00018 public:
00019 FarDetSliceListModule();
00020 ~FarDetSliceListModule();
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* fFarDetSliceFile;
00032 TTree* fFarDetSliceTree;
00033
00034 Int_t run,snarl;
00035 Int_t timeframe,time,date;
00036 Int_t planes,strips;
00037 Int_t begpln,endpln;
00038 Double_t charge,fidcharge;
00039 Double_t qSM1[11],qSM2[11];
00040 Double_t xSM1[11],xSM2[11];
00041 Double_t ySM1[11],ySM2[11];
00042 Double_t zSM1[11],zSM2[11];
00043 Double_t maxplncharge;
00044 Int_t edges,edgesSM1,edgesSM2;
00045 Int_t eventidSM1,eventidSM2,eventidX;
00046 Int_t eventid;
00047
00048 TString fListIn,fListOut;
00049 Int_t fFilterOnOff;
00050 Int_t fFilterMinPlanes;
00051 Int_t fFilterFC,fFilterPC;
00052 Int_t fFilter;
00053
00054 TObjArray fStrpList[500];
00055
00056 Int_t ApplyFilter(FarDetSliceListHandle* csh);
00057
00058
00059 ClassDef(FarDetSliceListModule,1)
00060 };
00061
00062 #endif