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