Line data Source code
1 : #ifndef AliPHOSEvalRecPoint_H
2 : #define AliPHOSEvalRecPoint_H
3 :
4 : // --- ROOT system ---
5 : #include "TObjArray.h"
6 :
7 :
8 : #include "AliPHOSCpvRecPoint.h"
9 : class AliPHOSClusterizer;
10 : class AliPHOSRecPoint;
11 : class AliPHOSRecManager;
12 : class TString;
13 :
14 0 : class AliPHOSEvalRecPoint : public AliPHOSCpvRecPoint
15 : {
16 : public:
17 :
18 : AliPHOSEvalRecPoint();
19 : AliPHOSEvalRecPoint(Bool_t cpv,AliPHOSEvalRecPoint* parent);
20 : AliPHOSEvalRecPoint(Int_t cluster, Bool_t cpv);
21 0 : virtual ~AliPHOSEvalRecPoint() {}
22 :
23 : Bool_t TooClose(AliPHOSRecPoint* pt) const ;
24 : Bool_t NeedToSplit() const ;
25 :
26 : void MergeClosePoint();
27 : void SplitMergedShowers();
28 : Int_t UnfoldLocalMaxima();
29 : void EvaluatePosition();
30 : Bool_t KillWeakPoint();
31 :
32 0 : Bool_t IsEmc(void) const { return fIsEmc; }
33 0 : Bool_t IsCPV(void) const { return fIsCpv; }
34 :
35 0 : void SetLocalPosition(TVector3& pos) { fLocPos=pos; }
36 : void UpdateWorkingPool();
37 : void DeleteParent();
38 :
39 : Int_t HasChild(TObjArray& children);
40 :
41 : void MakeJob();
42 :
43 : AliPHOSClusterizer* GetClusterizer();
44 : AliPHOSRecManager* GetReconstructionManager() const;
45 :
46 : void PrintPoint();
47 :
48 : AliPHOSRecPoint* Parent();
49 : Float_t Chi2Dof() const;
50 :
51 : const TObject* GetWorkingPool();
52 :
53 : void AddToWorkingPool(TObject* obj);
54 : TObject* GetFromWorkingPool(Int_t i);
55 : Int_t InWorkingPool();
56 : void RemoveFromWorkingPool(TObject* obj);
57 : void PrintWorkingPool();
58 :
59 : enum RecPointType {kEmc,kCpv};
60 :
61 : private:
62 :
63 : void Init();
64 : void InitTwoGam(Float_t* gamma1, Float_t* gamma2);
65 : void TwoGam(Float_t* gamma1, Float_t* gamma2);
66 : void UnfoldTwoMergedPoints(Float_t* gamma1, Float_t* gamma2);
67 :
68 : private:
69 :
70 : Bool_t fIsEmc; // true if EMC
71 : Bool_t fIsCpv; // true if CPV
72 : Int_t fParent; // parent
73 : Float_t fChi2Dof; // chi^2 per degree of freedom
74 : TString fEventFolderName; // Folder name
75 :
76 20 : ClassDef(AliPHOSEvalRecPoint,1)
77 :
78 : };
79 :
80 : #endif
|