]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONTriggerQADataMakerRec.h
97fc0084ae710293884fda2e4a6ee9e0dea4c3b7
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerQADataMakerRec.h
1 #ifndef ALIMUONTRIGGERQADATAMAKERREC_H
2 #define ALIMUONTRIGGERQADATAMAKERREC_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 // $Id$
7
8 /// \ingroup rec
9 /// \class AliMUONTriggerQADataMakerRec
10 /// \brief MUON Quality assurance data maker for MTR
11 ///
12
13 // --- AliRoot header files ---
14 #include "AliMUONVQADataMakerRec.h"
15
16 class AliMUONCalibrationData;
17 class AliMUONDigitMaker;
18 class AliMUONVClusterStore;
19 class AliMUONTriggerElectronics;
20 class AliMUONVDigitStore;
21 class TObjectArray;
22 class TMap;
23 class AliMpDCSNamer;
24 class AliMUONVTriggerStore;
25 class AliMUONGlobalTrigger;
26
27 class AliMUONTriggerQADataMakerRec: public AliMUONVQADataMakerRec {
28
29 public:
30   AliMUONTriggerQADataMakerRec(AliQADataMakerRec* master);         
31   virtual ~AliMUONTriggerQADataMakerRec();
32   
33   virtual void InitRaws(); 
34   virtual void InitRecPoints(); 
35   virtual void InitDigits(); 
36   virtual void InitESDs(); 
37   
38   void EndOfDetectorCycleRaws(Int_t specie, TObjArray** list);
39   void EndOfDetectorCycleRecPoints(Int_t specie, TObjArray** list);
40   void EndOfDetectorCycleESDs(Int_t specie, TObjArray** list);
41   
42   /// Empty implementation
43   void EndOfDetectorCycleDigits(Int_t , TObjArray** ) {}
44     
45   virtual void MakeRaws(AliRawReader* rawReader); 
46   
47   virtual void MakeDigits(TTree* dig); 
48   virtual void MakeRecPoints(TTree* recpo); 
49   virtual void MakeESDs(AliESDEvent* esd) ;
50   
51 private:
52   /// Not implemented
53   AliMUONTriggerQADataMakerRec(const AliMUONTriggerQADataMakerRec& qadm);   
54   /// Not implemented
55   AliMUONTriggerQADataMakerRec& operator=(const AliMUONTriggerQADataMakerRec& qadm);
56
57   void DisplayTriggerInfo();
58   void FillRatio4434Histos(Int_t evtInterval);
59   Bool_t FillTriggerDCSHistos();
60   TObjArray* GetDCSValues(Int_t iMeas, Int_t detElemId,
61                           TMap* triggerDcsMap, AliMpDCSNamer& triggerDcsNamer);
62   UChar_t RawTriggerInGlobal2OutGlobal(UInt_t globalInput[4]);
63   void RawTriggerMatchOutLocal(const AliMUONVTriggerStore& inputTriggerStore, const AliMUONVTriggerStore& recoTriggerStore);
64   //void RawTriggerMatchOutLocalInRegional();
65   void RawTriggerMatchOutGlobal(AliMUONGlobalTrigger& inputLocalTrigger,
66                                 AliMUONGlobalTrigger& recoGlobalTrigger,
67                                 Char_t histo);
68   AliMUONTriggerElectronics* TriggerElectronics();
69
70   //Int_t fTriggerOutputRegionalData[16]; ///< Data Regional Trigger decision for each Regional Board (1R:0, 2R:1, ... , 1L:8, ...) -> 4 bits LPt, 4 bits HPt
71   //Int_t fTriggerInputRegionalRecLPt[2][16][16]; ///< Reconstructed Regional Input LPt for each Regional Board ([bit][reg][loc]) (reg -> 1R:0, 2R:1, ... , 1L:8, ...)
72   //Int_t fTriggerInputRegionalRecHPt[2][16][16]; ///< Reconstructed Regional Input HPt for each Regional Board ([bit][reg][loc]) (reg -> 1R:0, 2R:1, ... , 1L:8, ...)
73   //Int_t fTriggerOutputRegionalRec[16]; ///< Reconstructed Regional Trigger decision for each Regional Board (8 Bits)
74
75   //Int_t fTriggerInputGlobalDataLPt[16][4]; ///< Data Global inputs LPt (1R:0, 2R:1, ... , 1L:8, ...)
76   //Int_t fTriggerInputGlobalDataHPt[16][4]; ///< Data Global inputs HPt (1R:0, 2R:1, ... , 1L:8, ...)
77   //Int_t fTriggerOutputGlobalRecFromLocalInput[6]; //< Reconstructed Global outputs from Local inputs
78   //Int_t fTriggerOutputGlobalRecFromLocalOutput[6]; //< Reconstructed Global outputs from Local outputs
79
80   static const Int_t fgkUpdateRatio4434=50; ///< Event interval between 2 update of the Ratio4434 histos
81   
82   AliMUONDigitMaker* fDigitMaker; //!< pointer to digit maker
83   AliMUONCalibrationData* fCalibrationData; //!< Used to load Local, Regional and Global masks
84   AliMUONTriggerElectronics* fTriggerProcessor; //!< trigger processore to re-compute response
85   AliMUONVDigitStore* fDigitStore; //!< pointer to digits store
86   
87   ClassDef(AliMUONTriggerQADataMakerRec,1)  // MUON Quality assurance data maker
88
89 };
90
91 #endif