Line data Source code
1 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 : * See cxx source for full Copyright notice */
3 :
4 : // $Id$
5 :
6 : /// \ingroup calib
7 : /// \class AliMUONTriggerEfficiencyCells
8 : /// \brief Store and give access to the trigger chamber efficiency.
9 : ///
10 : // Author: Diego Stocco; INFN Torino
11 :
12 : #ifndef ALIMUONTRIGGEREFFICIENCYCELLS_H
13 : #define ALIMUONTRIGGEREFFICIENCYCELLS_H
14 :
15 : #include "TObject.h"
16 : class TH1F;
17 : class TList;
18 :
19 : class AliMUONTriggerEfficiencyCells : public TObject
20 : {
21 : public:
22 : AliMUONTriggerEfficiencyCells();
23 : AliMUONTriggerEfficiencyCells(const Char_t* filename, const Char_t* listname="triggerChamberEff");
24 : AliMUONTriggerEfficiencyCells(TList *countHistoList);
25 :
26 : AliMUONTriggerEfficiencyCells(const AliMUONTriggerEfficiencyCells& other); // copy constructor
27 : AliMUONTriggerEfficiencyCells& operator=(const AliMUONTriggerEfficiencyCells& other); // assignment operator
28 :
29 : virtual ~AliMUONTriggerEfficiencyCells();
30 :
31 : enum {
32 : kBendingEff, ///< Bending plane fired
33 : kNonBendingEff, ///< Non-bending plane fired
34 : kBothPlanesEff, ///< Both planes fired
35 : kAllTracks, ///< tracks used for calculation
36 : kNcounts ///< Number of count type
37 : };
38 :
39 : enum {
40 : kHboardCount, ///< Counts per board index
41 : kHslatCount, ///< Counts per slat index
42 : kHchamberCount ///< Counts per chamber index
43 : };
44 :
45 : const Char_t* GetHistoName(Int_t histoType, Int_t countType,
46 : Int_t chamber = -1);
47 :
48 : /// Get list of histograms
49 80 : TList* GetHistoList() { return fCountHistoList; }
50 :
51 : TH1F* GetOldEffHisto(Int_t hType, Int_t ich, Int_t icath) const; // obsolete
52 :
53 : protected:
54 : void ResetHistos(Bool_t deleteObjects = kFALSE);
55 :
56 : void ReadFile(const Char_t* filename,
57 : const Char_t* listname);
58 :
59 : private:
60 : void CheckConstants() const;
61 :
62 : static const Int_t fgkNcathodes=2; ///<Number of cathodes
63 : static const Int_t fgkNchambers=4; ///<Number of chambers
64 : static const Int_t fgkNplanes=8; ///<Number of planes
65 :
66 : TH1F *fBoardEfficiency[fgkNplanes];///< the boards content (obsolete)
67 : TH1F *fSlatEfficiency[fgkNplanes];///< the slats content (obsolete)
68 :
69 : TList *fCountHistoList; ///< list of histograms for efficiency calculation
70 : TList *fNoCountHistoList; ///<list of efficiency denominators (obsolete)
71 : TList *fFiredStrips; ///<list of fired strips for efficiency check (obsolete)
72 :
73 42 : ClassDef(AliMUONTriggerEfficiencyCells,6) // Trigger efficiency store
74 : };
75 : #endif
|