]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONTriggerQADataMakerRec.h
Coverity inspired fix
[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
69   //Int_t fTriggerOutputRegionalData[16]; ///< Data Regional Trigger decision for each Regional Board (1R:0, 2R:1, ... , 1L:8, ...) -> 4 bits LPt, 4 bits HPt
70   //Int_t fTriggerInputRegionalRecLPt[2][16][16]; ///< Reconstructed Regional Input LPt for each Regional Board ([bit][reg][loc]) (reg -> 1R:0, 2R:1, ... , 1L:8, ...)
71   //Int_t fTriggerInputRegionalRecHPt[2][16][16]; ///< Reconstructed Regional Input HPt for each Regional Board ([bit][reg][loc]) (reg -> 1R:0, 2R:1, ... , 1L:8, ...)
72   //Int_t fTriggerOutputRegionalRec[16]; ///< Reconstructed Regional Trigger decision for each Regional Board (8 Bits)
73
74   //Int_t fTriggerInputGlobalDataLPt[16][4]; ///< Data Global inputs LPt (1R:0, 2R:1, ... , 1L:8, ...)
75   //Int_t fTriggerInputGlobalDataHPt[16][4]; ///< Data Global inputs HPt (1R:0, 2R:1, ... , 1L:8, ...)
76   //Int_t fTriggerOutputGlobalRecFromLocalInput[6]; //< Reconstructed Global outputs from Local inputs
77   //Int_t fTriggerOutputGlobalRecFromLocalOutput[6]; //< Reconstructed Global outputs from Local outputs
78
79   static const Int_t fgkUpdateRatio4434=50; ///< Event interval between 2 update of the Ratio4434 histos
80   
81   AliMUONDigitMaker* fDigitMaker; //!< pointer to digit maker
82   AliMUONCalibrationData* fCalibrationData; //!< Used to load Local, Regional and Global masks
83   AliMUONTriggerElectronics* fTriggerProcessor; //!< trigger processore to re-compute response
84   AliMUONVDigitStore* fDigitStore; //!< pointer to digits store
85   
86   ClassDef(AliMUONTriggerQADataMakerRec,1)  // MUON Quality assurance data maker
87
88 };
89
90 #endif