/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/DQA/DQA_MUC/DQA_MUC-00-01-04/DQA_MUC/DQA_MUC.h

Go to the documentation of this file.
00001 #ifndef Physics_Analysis_DQA_MUC_H
00002 #define Physics_Analysis_DQA_MUC_H
00003 
00004 #include "GaudiKernel/AlgFactory.h"
00005 #include "GaudiKernel/Algorithm.h"
00006 #include "GaudiKernel/NTuple.h"
00007 
00008 #include "TH1F.h"
00009 #include "TF1.h"
00010 
00011 #include "MucCalibAlg/MucStructConst.h"
00012 #include "MucCalibAlg/MucMark.h"
00013 #include "MucCalibAlg/MucIdTransform.h"
00014 
00015 class ITHistSvc;
00016 const int TAGN = 2; // 0-all; 1-dimu
00017 const int LVLN = 3; // 0-layer; 1-box; 2-strip
00018 const char ENAME[TAGN][10] = {"All","Dimu"};
00019 const char HTYPE[2][10]    = {"Num","Den"};
00020 const char LNAME[LVLN][10] = {"Layer","Box","Strip"};
00021 
00022 class DQA_MUC : public Algorithm {
00023 
00024 public:
00025   DQA_MUC(const std::string& name, ISvcLocator* pSvcLocator);
00026   StatusCode initialize();
00027   StatusCode execute();
00028   StatusCode finalize();  
00029   
00030 private:
00031   StatusCode FillHistograms( bool isDimu );  
00032   
00033 private:
00034   // Interface 
00035   ITHistSvc* m_thsvc;
00036   long m_run, m_event;
00037 
00038   int m_effWindow;
00039   // Muc variables 
00040   // Digi and hit container for total events
00041   // 0-digi number, 1-rec track number, 2-efficiency hit number, 
00042   // 3-incidental and noise hit number, 4-rec/fit hit number
00043   long m_recordAll[PART_MAX][SEGMENT_MAX][LAYER_MAX][STRIP_INBOX_MAX][5];
00044   long m_recordDimu[PART_MAX][SEGMENT_MAX][LAYER_MAX][STRIP_INBOX_MAX][5];
00045 
00046   // Digi or hit mark collection for one event
00047   MucMark*  m_ptrMucMark;
00048   mark_col  m_digiCol;    // container of digis in an event
00049   mark_col  m_expHitCol;  // container of fitting hits in all rec tracks in an  event 
00050   mark_col  m_effHitCol;  // container of fired hits in all rec tracks in an event 
00051   mark_col  m_nosHitCol;  // container of noise hits in all rec tracks in an event 
00052 
00053   mark_col  m_segDigiCol[PART_MAX][SEGMENT_MAX];  // container of digis in segment of part
00054   vector< mark_col > m_clusterCol; // container of clusters in all digits of an event
00055   vector<float> m_lineResCol; // container of residual by line fit
00056  
00057   // Muc id transformer
00058   MucIdTransform* m_ptrIdTr;  
00059 
00060   // Spacial resolution
00061   TH1F* m_hBrResDist[B_LAY_NUM][TAGN];  // barrel spacial resolution
00062   TH1F* m_hEcResDist[E_LAY_NUM][TAGN];  // endcap spacial resolution
00063 //  TH1F* m_hBrRes[TAGN];                 // barrel spacial resolution vs layer
00064 //  TH1F* m_hEcRes[TAGN];                 // endcap spacial resolution vs layer  
00065   
00066   // Efficiency and noise ratio
00067   TH1F* m_hEff[LVLN][TAGN][2];
00068   TH1F* m_hNosRatio[TAGN][2];
00069 
00070   // Costheta and phi of MUC track position on 1st layer
00071   TH1F* m_hCostheta[TAGN];
00072   TH1F* m_hPhi[TAGN];
00073       
00074 };
00075 
00076 
00077 #endif

Generated on Tue Nov 29 22:58:04 2016 for BOSS_7.0.2 by  doxygen 1.4.7