]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONCalibrationData.h
Updated the diff and plot methods. For debug purposes, can now limit the number
[u/mrichter/AliRoot.git] / MUON / AliMUONCalibrationData.h
CommitLineData
c5bdf179 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 base
7/// \class AliMUONCalibrationData
c3ce65fd 8/// \brief Single entry point to access MUON calibration data.
c5bdf179 9///
5398f946 10// Author Laurent Aphecetche
c5bdf179 11
12#ifndef ALIMUONCALIBRATIONDATA_H
13#define ALIMUONCALIBRATIONDATA_H
14
15#ifndef ROOT_TObject
16#include "TObject.h"
17#endif
18
19class AliCDBEntry;
e7d7fa47 20class AliMUONTriggerEfficiencyCells;
21class AliMUONTriggerLut;
a0eca509 22class AliMUONVStore;
23class AliMUONVStore;
e7d7fa47 24class AliMUONVCalibParam;
48ed403b 25class TMap;
c5bdf179 26
27class AliMUONCalibrationData : public TObject
28{
29public:
c3ce65fd 30 /** Constructor.
31 * @param runNumber is used as a key to the CDB
32 * @param deferredInitialization if kFALSE, all the calibrations are fetched
33 * regardless of whether you'll use them or not.
34 */
c5bdf179 35 AliMUONCalibrationData(Int_t runNumber=-1, Bool_t deferredInitialization=kTRUE);
36 virtual ~AliMUONCalibrationData();
c3ce65fd 37
a0eca509 38 AliMUONVStore* Neighbours() const;
d067ba7c 39
a0eca509 40 AliMUONVStore* Capacitances() const;
c1bbaf66 41
a0eca509 42 AliMUONVStore* Gains() const;
c5bdf179 43
c3ce65fd 44 /// Get the Gain calibration object for channels within (detElemId,manuId).
e7d7fa47 45 AliMUONVCalibParam* Gains(Int_t detElemId, Int_t manuId) const;
46
47 /// Get the mask for the global trigger board.
48 AliMUONVCalibParam* GlobalTriggerBoardMasks() const;
c3ce65fd 49
e7d7fa47 50 /// Get the mask for a given local trigger board.
51 AliMUONVCalibParam* LocalTriggerBoardMasks(Int_t localBoardNumber) const;
48ed403b 52
53 /// Get the HV values
54 TMap* HV() const;
e7d7fa47 55
c3ce65fd 56 /// Whether this object is valid or not (might be invalid if fetching from CDB failed).
57 Bool_t IsValid() const { return fIsValid; }
c5bdf179 58
a0eca509 59 AliMUONVStore* Pedestals() const;
48ed403b 60
c3ce65fd 61 /// Get the Pedestal calibration object for channels within (detElemId,manuId).
e7d7fa47 62 AliMUONVCalibParam* Pedestals(Int_t detElemId, Int_t manuId) const;
c5bdf179 63
c3ce65fd 64 /// Dump to screen.
c5bdf179 65 virtual void Print(Option_t* opt="") const;
e7d7fa47 66
67 /// Get the mask for a given regional trigger board.
68 AliMUONVCalibParam* RegionalTriggerBoardMasks(Int_t index) const;
69
c3ce65fd 70 /// The runnumber used by this object.
71 Int_t RunNumber() const { return fRunNumber; }
c5bdf179 72
e7d7fa47 73 /// Get the trigger Look Up Table.
74 AliMUONTriggerLut* TriggerLut() const;
75
76 /// Get the trigger efficiency map
77 AliMUONTriggerEfficiencyCells* TriggerEfficiency() const;
78
c1bbaf66 79 void Reset();
80
884a73f1 81protected:
71a2d3aa 82 /// Not implemented
e7d7fa47 83 AliMUONCalibrationData(const AliMUONCalibrationData& other);
71a2d3aa 84 /// Not implemented
e7d7fa47 85 AliMUONCalibrationData& operator=(const AliMUONCalibrationData& other);
86
c5bdf179 87private:
88 AliCDBEntry* GetEntry(const char* path) const;
a0eca509 89 AliMUONVStore* OnDemandNeighbours() const;
90 AliMUONVStore* OnDemandCapacitances() const;
91 AliMUONVStore* OnDemandGains() const;
92 AliMUONVStore* OnDemandPedestals() const;
48ed403b 93 TMap* OnDemandHV() const;
e7d7fa47 94 AliMUONVCalibParam* OnDemandGlobalTriggerBoardMasks() const;
a0eca509 95 AliMUONVStore* OnDemandRegionalTriggerBoardMasks() const;
96 AliMUONVStore* OnDemandLocalTriggerBoardMasks() const;
e7d7fa47 97 AliMUONTriggerLut* OnDemandTriggerLut() const;
98 AliMUONTriggerEfficiencyCells* OnDemandTriggerEfficiency() const;
c3ce65fd 99
c5bdf179 100private:
71a2d3aa 101 mutable Bool_t fIsValid; ///< Whether we were able to correctly initialize
102 Int_t fRunNumber; ///< The run number for which we hold calibrations
a0eca509 103 mutable AliMUONVStore* fGains; //!< Gains
104 mutable AliMUONVStore* fPedestals; //!< Pedestals
71a2d3aa 105 mutable TMap* fHV; //!< HV
a0eca509 106 mutable AliMUONVStore* fLocalTriggerBoardMasks; //!< Local trigger board maska
107 mutable AliMUONVStore* fRegionalTriggerBoardMasks; //!< Regional trigger board maska
71a2d3aa 108 mutable AliMUONVCalibParam* fGlobalTriggerBoardMasks; //!< Global trigger board maska
109 mutable AliMUONTriggerLut* fTriggerLut; //!< TRigger LUTs
110 mutable AliMUONTriggerEfficiencyCells* fTriggerEfficiency; //!< Trigger efficiency cells
a0eca509 111 mutable AliMUONVStore* fCapacitances; //!< Manu capacitances
112 mutable AliMUONVStore* fNeighbours; //!< list of neighbours for all channels
c5bdf179 113
a0eca509 114 ClassDef(AliMUONCalibrationData,7) // Storage for all MUON calibration data.
c5bdf179 115};
116
117#endif