Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

FarDetDataQualityModule.h

Go to the documentation of this file.
00001 #ifndef FARDETDATAQUALITYMODULE_H
00002 #define FARDETDATAQUALITYMODULE_H
00003 
00004 #include "JobControl/JobCModule.h"
00005 
00006 #include "TTree.h"
00007 #include "TFile.h"
00008 #include "TObjArray.h"
00009 
00010 class JobCommand;
00011 class MomNavigator;
00012       
00013 class SnarlHeader;
00014 class LiHeader;
00015 class VarcErrHeader;
00016 class SpillServHeader;
00017 class FarDetDataQualityHandle;
00018 
00019 class FarDetDataQualityModule : public JobCModule, public TObject
00020 {
00021 
00022 public:
00023 
00024   FarDetDataQualityModule();
00025   ~FarDetDataQualityModule();
00026   void BeginJob();              
00027   JobCResult Reco(MomNavigator *mom); 
00028   JobCResult Ana(const MomNavigator *mom); 
00029   const Registry& DefaultConfig() const;
00030   void Config(const Registry &r);
00031   void HandleCommand(JobCommand *command);
00032   void EndJob();                            
00033   
00034 private:
00035  
00036   TFile* fDataQualityFile;
00037   TTree* fDataQualityTree;
00038 
00039   TFile* fRunSummaryFile;
00040   TTree* fRunSummaryTree;
00041 
00042   Int_t run,subrun,snarl;
00043   Int_t date,time,timeframe;
00044   Int_t microsec,nanosec;
00045   Int_t crateMask;
00046   Int_t deadPlnChips,hotPlnChips,coldPlnChips,busyPlnChips;
00047   Int_t deadShldChips,hotShldChips,coldShldChips,busyShldChips;
00048   Int_t coldPlnChipsSM1,coldPlnChipsSM2,coldShldChipsSM1,coldShldChipsSM2;
00049   Int_t liBox,liLed,liPulseHeight,liPulseWidth;
00050   Int_t liChannels,hitPlnChannels,hitShldChannels;
00051   Int_t spillStatus,spillType,spillGpsError;
00052   Int_t sparsErrors,etcErrors;
00053   Int_t tpmtBox,tpmtNanosec;
00054   Int_t snarlRate,passRate;
00055   
00056   Int_t fFilterOnOff,fSummaryOnOff,fReducedSummaryOnOff;
00057   Int_t fRun,fSubRun,fSnarl,fTimeFrame,fEnd,fUpdate,fFilter;
00058   Int_t fCrateMask;
00059   Int_t fHotPlnChips;
00060   Int_t fColdPlnChips,fColdPlnChipsSM1,fColdPlnChipsSM2;
00061   Int_t fColdShldChips,fColdShldChipsSM1,fColdShldChipsSM2;
00062   Int_t fHitPlnChannels,fHitShldChannels,fLiChannels;
00063   Int_t fTpmtBox,fTpmtChannels;
00064   Int_t fFilterMinCrateMask;
00065   Int_t fFilterMinChannels,fFilterMaxChannels;
00066   Int_t fFilterMaxBadChips,fFilterMaxLiChannels;
00067   Int_t fEtcErrors,fSparsErrors;  
00068 
00069   Int_t RSrun,RSsubrun,RSdate,RStime,RStimeframe;
00070   Int_t RShotPlnChips;
00071   Int_t RScoldPlnChips,RScoldPlnChipsSM1,RScoldPlnChipsSM2;
00072   Int_t RScoldShldChips,RScoldShldChipsSM1,RScoldShldChipsSM2;
00073   Int_t RSsparsErrors,RSetcErrors;
00074   Int_t RSsnarlRate,RSpassRate; 
00075   Int_t RSlibox,RSliled;
00076 
00077   SnarlHeader* fSnarlHeader;
00078   LiHeader* fLiHeader;
00079   VarcErrHeader* fVarcErrHeader;
00080   SpillServHeader* fSpillServHeader;
00081   TObjArray* fBusyChipList;
00082   TObjArray* fBadChipList;
00083   TObjArray* fTpmtChipList;
00084 
00085   Int_t* fCratePlnRates;
00086   Int_t* cratePlnRates;
00087   Int_t* RScratePlnRates;
00088 
00089   Int_t PlnMask[16][24];
00090   Int_t ShldMask[16][6];
00091   Int_t LiBoxMask[22];
00092 
00093   void ProcessHeader(TObject* obj);
00094   void ProcessBlock(TObject* obj);
00095   Int_t ApplyFilter(FarDetDataQualityHandle* cdh);
00096 
00097 
00098   ClassDef(FarDetDataQualityModule,1)
00099 };
00100 
00101 #endif

Generated on Mon Feb 15 11:06:40 2010 for loon by  doxygen 1.3.9.1