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