AliPhysics  cc1c0ba (cc1c0ba)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliFMDESDFixer.h
Go to the documentation of this file.
1 #ifndef ALIFMDESDFIXER_H
2 #define ALIFMDESDFIXER_H
3 #include <TObject.h>
4 #include <TBits.h>
5 class TH1;
6 class TList;
7 class AliESDFMD;
8 class TVector3;
9 
32 class AliFMDESDFixer : public TObject
33 {
34 public:
39 
45  AliFMDESDFixer(const char* name);
51  const char* GetName() const { return "fmdESDFixer"; }
55  void CreateOutputObjects(TList* l);
62  void Fix(AliESDFMD& esd, const TVector3& ip);
63 
82  Int_t GetRecoNoiseFactor() const { return fRecoFactor; }
88  Bool_t IsUseNoiseCorrection() const { return fRecoFactor < 4; }
97  Int_t FindTargetNoiseFactor(const AliESDFMD& esd, Bool_t check=true) const;
98  /* @} */
99 
112  /* @} */
113 
124  void SetInvalidIsEmpty(Bool_t flag) { fInvalidIsEmpty = flag; }
139  void AddDead(UShort_t d, Char_t r, UShort_t s, UShort_t t);
150  void AddDeadRegion(UShort_t d, Char_t r, UShort_t s1, UShort_t s2,
151  UShort_t t1, UShort_t t2);
167  void AddDead(const Char_t* script);
168  /* @} */
169 
170  void Print(Option_t* option="") const;
171 protected:
174 
189  virtual Bool_t IsDead(UShort_t d, Char_t r, UShort_t s, UShort_t t) const;
215  const TVector3& ip, Double_t& mult, Double_t& eta,
216  Double_t& cosTheta);
227  Bool_t NoiseCorrect(Int_t f, Double_t c, Double_t cosTheta, Double_t& mult);
228 
229  Int_t fRecoFactor; // Noise factor used in Reco
230  Double_t fMaxNoiseCorr; // If noise corr above this, flag as dead
231  Bool_t fRecalculateEta; // Whether to recalc eta and angle cor (disp vtx)
232  TBits fXtraDead; // List of extra dead channels
233  Bool_t fHasXtraDead; // Whether we have xtra dead channels
234  Bool_t fInvalidIsEmpty; // Consider kInvalidMult as zero
235  TH1* fNoiseChange; // Diagnostics
236  TH1* fEtaChange; // Diagnostics
237  TH1* fDeadChange; // Diagnostics
238 
239  ClassDef(AliFMDESDFixer,1); // Fix FMD ESD object for issues
240 };
241 
242 #endif
243 //
244 // EOF
245 //
246 
Bool_t NoiseCorrect(Int_t f, Double_t c, Double_t cosTheta, Double_t &mult)
void RecalculateEta(UShort_t d, Char_t r, UShort_t s, UShort_t t, const TVector3 &ip, Double_t &mult, Double_t &eta, Double_t &cosTheta)
AliFMDESDFixer & operator=(const AliFMDESDFixer &)
double Double_t
Definition: External.C:58
void Print(Option_t *option="") const
void AddDead(UShort_t d, Char_t r, UShort_t s, UShort_t t)
void SetInvalidIsEmpty(Bool_t flag)
char Char_t
Definition: External.C:18
Int_t GetRecoNoiseFactor() const
void SetRecalculateEta(Bool_t use)
TCanvas * c
Definition: TestFitELoss.C:172
const char * GetName() const
Int_t FindTargetNoiseFactor(const AliESDFMD &esd, Bool_t check=true) const
Bool_t CheckDead(UShort_t d, Char_t r, UShort_t s, UShort_t t, Double_t &m)
Bool_t fInvalidIsEmpty
int Int_t
Definition: External.C:63
Double_t fMaxNoiseCorr
virtual Bool_t IsDead(UShort_t d, Char_t r, UShort_t s, UShort_t t) const
void SetMaxNoiseCorrection(Double_t x)
void AddDeadRegion(UShort_t d, Char_t r, UShort_t s1, UShort_t s2, UShort_t t1, UShort_t t2)
void SetRecoNoiseFactor(Int_t f)
void CreateOutputObjects(TList *l)
Bool_t fRecalculateEta
unsigned short UShort_t
Definition: External.C:28
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
void Fix(AliESDFMD &esd, const TVector3 &ip)
Definition: External.C:196
Bool_t IsUseNoiseCorrection() const