source: JEM-EUSO/esaf_lal/tags/v1_r0/esaf/packages/reconstruction/modules/base/clustering/include/EusoCluster.hh @ 117

Last change on this file since 117 was 117, checked in by moretto, 11 years ago

ESAF version compilable on mac OS

File size: 3.2 KB
Line 
1// ESAF : Euso Simulation and Analysis Framework
2// $Id: EusoCluster.hh 2717 2006-06-07 07:53:42Z pesce $
3// R. Pesce created Jan, 23 2004
4
5#ifndef __EUSOCLUSTER_HH_
6#define __EUSOCLUSTER_HH_
7
8#include <vector>
9#include <map>
10#include "euso.hh"
11
12class EusoCluster {
13public:
14    // ctor
15    EusoCluster();
16
17    // dtor
18    virtual ~EusoCluster();
19
20    // add a point in cluster
21    void AddPoint( Int_t id );
22
23    // getters
24    inline Int_t GetNumPoints() const { return fNumPoints; }
25    inline Double_t GetThetaMin() const { return fThetaMin; }
26    inline Double_t GetThetaMax() const { return fThetaMax; }
27    inline Double_t GetPhiMin() const { return fPhiMin; }
28    inline Double_t GetPhiMax() const { return fPhiMax; }
29    inline Int_t GetGtuMin() const { return fGtuMin; }
30    inline Int_t GetGtuMax() const { return fGtuMax; }
31    inline Int_t GetThreshold() const { return fThreshold; }
32    inline vector<Int_t> GetPixelVector() { return fPixelId; }
33    const Int_t GetPixelId( Int_t i );
34    inline Bool_t GetFitted() const { return fIsFitted; }
35    inline Double_t GetSlopeTheta() const { return fSlopeTheta; }
36    inline Double_t GetOffsetTheta() const { return fOffsetTheta; }
37    inline Double_t GetAbsoluteDeviationTheta() const { return fAbsoluteDeviationTheta; }
38    inline Double_t GetSlopePhi() const { return fSlopePhi; }
39    inline Double_t GetOffsetPhi() const { return fOffsetPhi; }
40    inline Double_t GetAbsoluteDeviationPhi() const { return fAbsoluteDeviationPhi; }
41   
42    // setters
43    inline void SetThetaMin( Double_t th ) { fThetaMin = th; }
44    inline void SetThetaMax( Double_t th ) { fThetaMax = th; }
45    inline void SetPhiMin( Double_t phi ) { fPhiMin = phi; }
46    inline void SetPhiMax( Double_t phi ) { fPhiMax = phi; }
47    inline void SetGtuMin( Int_t gtu ) { fGtuMin = gtu; }
48    inline void SetGtuMax( Int_t gtu ) { fGtuMax = gtu; }
49    inline void SetThreshold( Int_t t ) { fThreshold = t; }
50    inline void SetFitted( Bool_t isfit ) { fIsFitted = isfit; }
51    inline void SetSlopeTheta( Double_t slope ) { fSlopeTheta = slope; }
52    inline void SetOffsetTheta( Double_t offset ) { fOffsetTheta = offset; }
53    inline void SetAbsoluteDeviationTheta( Double_t abdev ) { fAbsoluteDeviationTheta = abdev; }
54    inline void SetSlopePhi( Double_t slope ) { fSlopePhi = slope; }
55    inline void SetOffsetPhi( Double_t offset ) { fOffsetPhi = offset; }
56    inline void SetAbsoluteDeviationPhi( Double_t abdev ) { fAbsoluteDeviationPhi = abdev; }
57
58
59private:
60
61    Int_t fNumPoints;   // number of points in cluster
62    Double_t fThetaMin;
63    Double_t fThetaMax;
64    Double_t fPhiMin;
65    Double_t fPhiMax;
66    Int_t fGtuMin;
67    Int_t fGtuMax;
68   
69    Int_t fThreshold; // threshold in pixel hits per gtu
70   
71    Bool_t fIsFitted; // true if cluster if fitted
72    // parameters of straight line that fit the points
73    // in theta-time and phi-time
74    Double_t fSlopeTheta;
75    Double_t fOffsetTheta;
76    Double_t fAbsoluteDeviationTheta;
77    Double_t fSlopePhi;
78    Double_t fOffsetPhi;
79    Double_t fAbsoluteDeviationPhi;
80   
81    // points of cluster
82    vector<Int_t> fPixelId; // not is unique id but reference to fPixelData vector in RecoEvent
83    ClassDef(EusoCluster,0)
84};
85
86#endif  /* __EUSOCLUSTER_HH_ */
87
Note: See TracBrowser for help on using the repository browser.