Adding PiKP-only histograms and eliminating a number of switches where histograms...
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerEfficiencyCells.h
CommitLineData
70b4a8d6 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
bf4d93eb 4// $Id$
5
be0c6f1f 6/// \ingroup calib
70b4a8d6 7/// \class AliMUONTriggerEfficiencyCells
8/// \brief Store and give access to the trigger chamber efficiency.
9///
5398f946 10// Author: Diego Stocco; INFN Torino
70b4a8d6 11
12#ifndef ALIMUONTRIGGEREFFICIENCYCELLS_H
13#define ALIMUONTRIGGEREFFICIENCYCELLS_H
14
15#include "TObject.h"
f3d288ab 16class TH1F;
17class TList;
70b4a8d6 18
19class AliMUONTriggerEfficiencyCells : public TObject
20{
21public:
22 AliMUONTriggerEfficiencyCells();
2236b58a 23 AliMUONTriggerEfficiencyCells(const Char_t* filename, const Char_t* listname="triggerChamberEff");
f3d288ab 24 AliMUONTriggerEfficiencyCells(TList *countHistoList);
311d0691 25
26 AliMUONTriggerEfficiencyCells(const AliMUONTriggerEfficiencyCells& other); // copy constructor
27 AliMUONTriggerEfficiencyCells& operator=(const AliMUONTriggerEfficiencyCells& other); // assignment operator
70b4a8d6 28
29 virtual ~AliMUONTriggerEfficiencyCells();
30
f3d288ab 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 };
70b4a8d6 44
f3d288ab 45 const Char_t* GetHistoName(Int_t histoType, Int_t countType,
46 Int_t chamber = -1);
70b4a8d6 47
f3d288ab 48 /// Get list of histograms
49 TList* GetHistoList() { return fCountHistoList; }
683cb6c5 50
9ee1d6ff 51 TH1F* GetOldEffHisto(Int_t hType, Int_t ich, Int_t icath) const; // obsolete
683cb6c5 52
70b4a8d6 53protected:
f3d288ab 54 void ResetHistos(Bool_t deleteObjects = kFALSE);
311d0691 55
f3d288ab 56 void ReadFile(const Char_t* filename,
57 const Char_t* listname);
70b4a8d6 58
59private:
313c3f0c 60 void CheckConstants() const;
a4342473 61
313c3f0c 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
70b4a8d6 65
f3d288ab 66 TH1F *fBoardEfficiency[fgkNplanes];///< the boards content (obsolete)
67 TH1F *fSlatEfficiency[fgkNplanes];///< the slats content (obsolete)
313c3f0c 68
f3d288ab 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)
96079e17 72
683cb6c5 73 ClassDef(AliMUONTriggerEfficiencyCells,6) // Trigger efficiency store
70b4a8d6 74};
75#endif