Adding the array of the recosntruction parameters (Marian)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSRecoParam.h
CommitLineData
58f66025 1#ifndef ALIPHOSRECOPARAM_H
2#define ALIPHOSRECOPARAM_H
3/* Copyright(c) 2007, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8// Base class for the PHOS reconstruction parameters.
9// Do not use in the reconstruction; use derivative classes instead.
10
cf4e2a86 11#include "AliDetectorRecoParam.h"
58f66025 12
cf4e2a86 13class AliPHOSRecoParam : public AliDetectorRecoParam {
58f66025 14
15public:
16
17 AliPHOSRecoParam();
18 AliPHOSRecoParam(const AliPHOSRecoParam& recoParam);
19 AliPHOSRecoParam& operator = (const AliPHOSRecoParam& recoParam);
20 virtual ~AliPHOSRecoParam() {}
21
7e88424f 22 Float_t GetEMCClusteringThreshold() const { return fEMCClusteringThreshold; }
23 Float_t GetEMCLocalMaxCut() const { return fEMCLocMaxCut; }
24 Float_t GetEMCMinE() const { return fEMCMinE; }
25 Float_t GetEMCLogWeight() const { return fEMCW0; }
26 Float_t GetEMCSampleQualityCut() const { return fEMCSampleQualityCut; }
27 Float_t GetEMCEcoreRadius() const { return fEMCEcoreRadius; }
28 Bool_t EMCEcore2ESD() const { return fEMCEcore2ESD; }
29 Bool_t EMCSubtractPedestals() const { return fEMCSubtractPedestals; }
30 Bool_t EMCToUnfold() const { return fEMCUnfold; }
31 const char* EMCDecoderVersion() const { return fEMCDecoderVersion.Data();}
71994f35 32 Bool_t GetEMCEnergyCorrectionOn() const { return fEMCEnergyCorrectionOn; }
aa64ff7a 33 Int_t GetGlobalAltroOffset() const { return fGlobalAltroOffset ; }
7e88424f 34
35 Float_t GetCPVClusteringThreshold() const { return fCPVClusteringThreshold; }
36 Float_t GetCPVLocalMaxCut() const { return fCPVLocMaxCut; }
37 Float_t GetCPVMinE() const { return fCPVMinE; }
38 Float_t GetCPVLogWeight() const { return fCPVW0; }
39 Bool_t CPVToUnfold() const { return fCPVUnfold; }
40
41 void SetEMCClusteringThreshold(Float_t cluth) { fEMCClusteringThreshold=cluth; }
42 void SetEMCLocalMaxCut(Float_t cut) { fEMCLocMaxCut =cut; }
43 void SetEMCMinE(Float_t minE) { fEMCMinE =minE; }
44 void SetEMCLogWeight(Float_t w) { fEMCW0 =w; }
45 void SetEMCSampleQualityCut(Float_t qu) { fEMCSampleQualityCut =qu; }
46 void SetEMCEcoreRadius(Float_t rCore) { fEMCEcoreRadius =rCore; }
47 void SetEMCEcore2ESD(Bool_t ecore) { fEMCEcore2ESD =ecore; }
48 void SetEMCSubtractPedestals(Bool_t subtract) { fEMCSubtractPedestals =subtract;}
49 void SetEMCDecoderVersion(const char* version="v1"){ fEMCDecoderVersion =version ;}
71994f35 50 void SetEMCUnfolding(Bool_t toUnfold=kFALSE) { fEMCUnfold =toUnfold;}
51 void SetEMCEnergyCorrectionOn(Bool_t on=kTRUE) { fEMCEnergyCorrectionOn =on; }
52 void SetGlobalAltroOffset(Int_t offset=5) { fGlobalAltroOffset =offset ; }
7e88424f 53
54 void SetCPVClusteringThreshold(Float_t cluth) { fCPVClusteringThreshold=cluth; }
55 void SetCPVLocalMaxCut(Float_t cut) { fCPVLocMaxCut =cut; }
56 void SetCPVMinE(Float_t minE) { fCPVMinE =minE; }
57 void SetCPVLogWeight(Float_t w) { fCPVW0 =w; }
58 void SetCPVUnfolding(Bool_t toUnfold=kFALSE) { fCPVUnfold =toUnfold;}
59
0428f331 60 virtual void Print(const Option_t *option="") const;
61
7e88424f 62 static AliPHOSRecoParam* GetDefaultParameters();
63 static const TObjArray* GetMappings();
58f66025 64
65protected:
66
7e88424f 67 Float_t fEMCClusteringThreshold; // EMC: Min.digit energy to start a new cluster, in GeV
68 Float_t fEMCLocMaxCut; // EMC: Min.energy difference between two local maxima, in GeV
69 Float_t fEMCMinE; // EMC: Min.E in the digits list associated with rec.point, in GeV
70 Float_t fEMCW0; // EMC: Log.weight to evaluate a local coordinate of rec.point
71 Float_t fEMCSampleQualityCut; // EMC: Cut on pulse shape fit quality
72 Float_t fEMCEcoreRadius; // EMC: Radius within which the core energy is calculated, in cm
73 Bool_t fEMCEcore2ESD; // EMC: true if Ecore is stored in ESD instead of Etot
74 Bool_t fEMCSubtractPedestals; // EMC: true if pedestal should be subtracted (in non-ZS)
75 Bool_t fEMCUnfold; // EMC: true if overlapped clusters should be unfolded
71994f35 76 Bool_t fEMCEnergyCorrectionOn; // EMC: if true do non-linear correction of cluster energy
7e88424f 77 TString fEMCDecoderVersion ; // EMC: AliPHOSRawDecoder version
aa64ff7a 78 Int_t fGlobalAltroOffset ; // Offset used in ALTRO chips in SZ runs
7e88424f 79
80 Float_t fCPVClusteringThreshold; // CPV: Min.digit energy to start a new cluster, in GeV
81 Float_t fCPVLocMaxCut; // CPV: Min.energy difference between two local maxima, in GeV
82 Float_t fCPVMinE; // CPV: Min.E in the digits list associated with rec.point, in GeV
83 Float_t fCPVW0; // CPV: Log.weight to evaluate a local coordinate of rec.point
84 Bool_t fCPVUnfold; // CPV: true if overlapped clusters should be unfolded
85
86 static TObjArray* fgkMaps; // ALTRO mappings for RCU0..RCU3
87
71994f35 88 ClassDef(AliPHOSRecoParam,8)
58f66025 89};
90
91#endif