AliRoot Core  d69033e (d69033e)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliTPCCalibPedestal.h
Go to the documentation of this file.
1 #ifndef ALITPCCALIBPEDESTAL_H
2 #define ALITPCCALIBPEDESTAL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
8 
9 #include <TObjArray.h>
10 #include "AliTPCCalibRawBase.h"
11 
12 class TArrayF;
13 class TH2F;
14 class TTreeSRedirector;
15 class AliTPCROC;
16 class AliTPCCalROC;
17 class AliRawReader;
18 class TMap;
19 
20 struct eventHeaderStruct;
21 
23 
24 public:
27  AliTPCCalibPedestal(const TMap *config);
28  virtual ~AliTPCCalibPedestal();
29 
31 
32  virtual Int_t Update(const Int_t isector, const Int_t iRow, const Int_t iPad,
33  const Int_t iTimeBin, const Float_t signal);
34  virtual void Analyse();
35  //
36  AliTPCCalROC* GetCalRocPedestal (Int_t sector, Bool_t force=kFALSE); // get calibration object - sector
37  AliTPCCalROC* GetCalRocSigma(Int_t sector, Bool_t force=kFALSE); // get calibration object - sector
38  const TObjArray* GetCalPadPedestal() const {return &fCalRocArrayPedestal;} // get calibration object
39  const TObjArray* GetCalPadSigma() const {return &fCalRocArraySigma;} // get calibration object
40 
41  AliTPCCalROC* GetCalRocMean (Int_t sector, Bool_t force=kFALSE); // get calibration object - sector
42  AliTPCCalROC* GetCalRocRMS(Int_t sector, Bool_t force=kFALSE); // get calibration object - sector
43  const TObjArray* GetCalPadMean() const {return &fCalRocArrayMean;} // get calibration object
44  const TObjArray* GetCalPadRMS() const {return &fCalRocArrayRMS;} // get calibration object
45 
46  TH2F* GetHistoPedestal (Int_t sector, Bool_t force=kFALSE); // get refernce histogram
47  //
48  void SetTimeAnalysis(Bool_t time = kTRUE); // Use ONLY in TPCPEDESTALda on LDC for one sector!
49  void AnalyseTime(Int_t nevents); // Makes sense only in TPCPEDESTALda on LDC!
50  TArrayF **GetTimePedestals() const { return fTimeSignal; } // Get array with time dependent pedestals (for one sector!)
51  //
52  Int_t GetAdcMin() const { return fAdcMin; }
53  Int_t GetAdcMax() const { return fAdcMax; }
54  Float_t GetAnaMeanDown() const { return fAnaMeanDown; }
55  Float_t GetAnaMeanUp() const { return fAnaMeanUp; }
56 
57  void SetRangeAdc (Int_t aMin, Int_t aMax){ fAdcMin=aMin; fAdcMax=aMax; } // Set adc range for the pedestal calibration
58  void SetAnalysisTruncationRange(Float_t down, Float_t up) {fAnaMeanDown=down; fAnaMeanUp=up;} //Set range for truncated mean analysis of the channel information
59 
60  void Merge(AliTPCCalibPedestal * const ped);
61  virtual Long64_t Merge(TCollection * const list);
62 
63  Bool_t TestEvent(); // Test the fast approach to fill histogram - used for test purposes
64 
65 private:
66  Int_t fAdcMin;
67  Int_t fAdcMax;
68 
69  Float_t fAnaMeanDown;
70  Float_t fAnaMeanUp;
71 
72  Bool_t fTimeAnalysis;
73 
76 
78 
79  TArrayF **fTimeSignal;
80 
83 
84  TH2F* GetHisto(Int_t sector, TObjArray *arr,
85  Int_t nbinsY, Float_t ymin, Float_t ymax,
86  const Char_t *type, Bool_t force);
87 
88  AliTPCCalROC* GetCalRoc(Int_t sector, TObjArray* arr, Bool_t force);
89 
90  ClassDef(AliTPCCalibPedestal, 7) // Implementation of the TPC pedestal and noise calibration
91 };
92 
93 
94 
95 #endif
96 
const TObjArray * GetCalPadSigma() const
const TObjArray * GetCalPadRMS() const
AliTPCCalibPedestal & operator=(const AliTPCCalibPedestal &source)
AliTPCCalROC * GetCalRocSigma(Int_t sector, Bool_t force=kFALSE)
#define TObjArray
Implementation of the TPC pedestal calibration.
AliTPCCalROC * GetCalRocRMS(Int_t sector, Bool_t force=kFALSE)
void SetRangeAdc(Int_t aMin, Int_t aMax)
Int_t GetAdcMin() const
Float_t GetAnaMeanDown() const
TArrayF ** fTimeSignal
! Arrays which hold time dependent signals
Int_t GetAdcMax() const
Base class for the calibration algorithms using raw data as input.
TObjArray fCalRocArrayMean
Array of AliTPCCalROC class for pedestal values, simple mean.
virtual Int_t Update(const Int_t isector, const Int_t iRow, const Int_t iPad, const Int_t iTimeBin, const Float_t signal)
TObjArray fCalRocArrayRMS
Array of AliTPCCalROC class for noise values, simple rms.
Int_t fAdcMin
min adc channel of pedestal value
TArrayF ** GetTimePedestals() const
void AnalyseTime(Int_t nevents)
void SetTimeAnalysis(Bool_t time=kTRUE)
AliTPCCalROC * GetCalRocPedestal(Int_t sector, Bool_t force=kFALSE)
Float_t fAnaMeanUp
Truncated mean channel analysis - upper cut.
Geometry class for a single ROC.
Definition: AliTPCROC.h:14
Float_t fAnaMeanDown
Truncated mean channel analysis - lower cut.
TPC calibration base class for one ROC.
Definition: AliTPCCalROC.h:20
TH2F * GetHisto(Int_t sector, TObjArray *arr, Int_t nbinsY, Float_t ymin, Float_t ymax, const Char_t *type, Bool_t force)
const TObjArray * GetCalPadPedestal() const
void Merge(AliTPCCalibPedestal *const ped)
Bool_t fTimeAnalysis
! Should we use the time dependent analysis? ONLY ON LDC!
void SetAnalysisTruncationRange(Float_t down, Float_t up)
AliTPCCalROC * GetCalRocMean(Int_t sector, Bool_t force=kFALSE)
const TObjArray * GetCalPadMean() const
AliTPCCalROC * GetCalRoc(Int_t sector, TObjArray *arr, Bool_t force)
TObjArray fHistoPedestalArray
Calibration histograms for Pedestal distribution.
TH2F * GetHistoPedestal(Int_t sector, Bool_t force=kFALSE)
TObjArray fCalRocArraySigma
Array of AliTPCCalROC class for noise values from gaus fit.
Int_t fAdcMax
max adc channel of pedestal value
TObjArray fCalRocArrayPedestal
Array of AliTPCCalROC class for pedestal values from gaus fit.
Float_t GetAnaMeanUp() const