Always delete TObjArrays created by TString::Tokenize (Ruben)
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerChamberEfficiency.h
CommitLineData
f3d288ab 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 AliMUONTriggerChamberEfficiency
8/// \brief Calculate, apply and possibly draw trigger chamber efficiency.
9///
10// Author: Diego Stocco; Subatech, Nantes
11
9ee1d6ff 12#ifndef ALIMUONTRIGGERCHAMBEREFFICIENCY_H
13#define ALIMUONTRIGGERCHAMBEREFFICIENCY_H
f3d288ab 14
15#include "TObject.h"
16class TH1;
17class TList;
18class TObjArray;
19class TGraphAsymmErrors;
20class AliMUONTriggerEfficiencyCells;
21
22class AliMUONTriggerChamberEfficiency : public TObject
23{
24public:
25 AliMUONTriggerChamberEfficiency(AliMUONTriggerEfficiencyCells* effMap);
26 AliMUONTriggerChamberEfficiency(const Char_t* filename,
27 const Char_t* listname="triggerChamberEff");
28
29 AliMUONTriggerChamberEfficiency(const AliMUONTriggerChamberEfficiency& other); // copy constructor
30 AliMUONTriggerChamberEfficiency& operator=(const AliMUONTriggerChamberEfficiency& other); // assignment operator
31
32 virtual ~AliMUONTriggerChamberEfficiency();
33
34 Float_t GetCellEfficiency(Int_t detElemId, Int_t localBoard, Int_t hType) const;
5bb523d1 35 Float_t GetCellEfficiencyError(Int_t detElemId, Int_t localBoard, Int_t hType, Int_t errType) const;
36 TObject* GetEffObject(Int_t histoType, Int_t countType, Int_t chamber);
f3d288ab 37
38 void IsTriggered(Int_t detElemId, Int_t localBoard, Bool_t &trigBend, Bool_t &trigNonBend) const;
39
40 Bool_t LowStatisticsSettings(Bool_t useMeanValues=kTRUE);
41
42 // Methods for display
43 void DisplayEfficiency(Bool_t perSlat=kFALSE, Bool_t show2Dhisto = kTRUE);
44
45 enum{
46 kHboardEff, ///< Efficiency per board index
47 kHslatEff ///< Efficiency per slat index
48 };
49
50private:
51 Int_t FindChamberIndex(Int_t detElemId) const;
52 void FillFromList(Bool_t useMeanValues = kFALSE);
53
54 Int_t GetIndex(Int_t histoType, Int_t countType,
55 Int_t chamber = -1) const;
56
57 TGraphAsymmErrors* GetEfficiencyGraph(TH1* histoNum, TH1* histoDen);
58
59 Bool_t fIsOwner; ///< Owner of efficiency map
60 AliMUONTriggerEfficiencyCells* fEfficiencyMap; ///< Efficiency map
61
62 TObjArray* fEfficiencyObjects; ///< Collect all efficiency
63 TList* fDisplayList; //!< List of objects for display
64
65 ClassDef(AliMUONTriggerChamberEfficiency,0) // Trigger efficiency store
66};
67#endif