CGEM BOSS 6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
MucRecHit.h
Go to the documentation of this file.
1//$id$
2//
3//$log$
4
5/*
6 * 2003/12/12 Zhengyun You Peking University
7 *
8 * 2004/09/12 Zhengyun You Peking University
9 * transplanted to Gaudi framework
10 */
11
12#ifndef MUC_REC_HIT_H
13#define MUC_REC_HIT_H
14
15#include <CLHEP/Vector/ThreeVector.h>
16#include <CLHEP/Geometry/Point3D.h>
17
18#include "GaudiKernel/ContainedObject.h"
19#include "GaudiKernel/ObjectVector.h"
20#include "GaudiKernel/SmartRef.h"
24
25#ifndef ENABLE_BACKWARDS_COMPATIBILITY
27#endif
28#ifndef ENABLE_BACKWARDS_COMPATIBILITY
30#endif
31
32using namespace std;
33using namespace CLHEP;
34
35extern const CLID &CLID_MucRecHit;
36
37class MucRecHit : virtual public ContainedObject
38{
39 public:
40
41 /// Constructor.
43
44 /// Constructor.
45 MucRecHit(const Identifier& id);
46
47 /// Constructor.
48 MucRecHit(const int part = -1,
49 const int seg = -1,
50 const int gap = -1,
51 const int strip = -1);
52
53 /// Copy constructor.
54 MucRecHit(const MucRecHit& source);
55
56 /// Assignment operator.
57 MucRecHit& operator=(const MucRecHit& orig);
58
59 /// Destructor.
60 ~MucRecHit();
61
62 virtual const CLID& clID() const { return MucRecHit::classID(); }
63 static const CLID& classID() { return CLID_MucRecHit; }
64
65 public:
66
67 /// Get soft identifier of this hit.
68 Identifier GetID() const { return m_MucID; }
69
70 /// Get Part.
71 int Part() const { return MucID::part(m_MucID); }
72
73 /// Get Seg.
74 int Seg() const { return MucID::seg(m_MucID); }
75
76 /// Get Gap.
77 int Gap() const { return MucID::gap(m_MucID); }
78
79 /// Get Strip.
80 int Strip() const { return MucID::strip(m_MucID); }
81
82 /// Get geometry data for the gap containing this hit.
83 MucGeoGap *GetGap() const { return m_pMucGeoGap; }
84
85 /// Get geometry data for the strip containing this hit.
86 MucGeoStrip *GetStrip() const { return m_pMucGeoStrip; }
87
88 /// Get Center position of the strip (global coords).
89 Hep3Vector GetCenterPos() const;
90
91 /// Get Center position uncertainty of the strip (global coords).
92 Hep3Vector GetCenterSigma() const;
93
94 void SetHitMode(int recmode){ m_recmode = recmode;}
95
96 int GetHitMode() const {return m_recmode;}
97
98 void SetHitSeed(int seed ){m_IsSeed = seed;}
99
100 int HitIsSeed() const {return m_IsSeed;}
101
102 void SetPadID(int padID){m_padID = padID;}
103 void SetIntersectX(float x){m_intersect_x = x;}
104 void SetIntersectY(float y){m_intersect_y = y;}
105 void SetIntersectZ(float z){m_intersect_z = z;}
106
107 int GetPadID() const {return m_padID;}
108 float GetIntersectX() const{return m_intersect_x;}
109 float GetIntersectY() const{return m_intersect_y;}
110 float GetIntersectZ() const{return m_intersect_z;}
111
112 private:
113
114 Identifier m_MucID;
115 int m_padID; // Which pad is expected, Only used in expected hit,
116 float m_intersect_x; // intersection position of expected hit
117 float m_intersect_y;
118 float m_intersect_z;
119 MucGeoGap *m_pMucGeoGap;
120 MucGeoStrip *m_pMucGeoStrip;
121 HepPoint3D m_CenterPos; // Position of strip which was hit.
122 HepPoint3D m_CenterSigma; // Uncert. in position of strip.
123 int m_recmode; // 1: mdc ext ; 2 emc ext
124 int m_IsSeed;
125};
126
127typedef ObjectVector<MucRecHit> MucRecHitCol;
128
129#endif /* MUC_REC_HIT_H */
Double_t x[10]
HepGeom::Point3D< double > HepPoint3D
Definition MucRecHit.h:26
HepGeom::Vector3D< double > HepVector3D
Definition MucRecHit.h:29
ObjectVector< MucRecHit > MucRecHitCol
Definition MucRecHit.h:127
const CLID & CLID_MucRecHit
static int part(const Identifier &id)
Definition MucID.cxx:46
static int gap(const Identifier &id)
Definition MucID.cxx:66
static int seg(const Identifier &id)
Definition MucID.cxx:56
static int strip(const Identifier &id)
Definition MucID.cxx:76
float GetIntersectZ() const
Definition MucRecHit.h:110
void SetIntersectZ(float z)
Definition MucRecHit.h:105
int Seg() const
Get Seg.
Definition MucRecHit.h:74
void SetHitSeed(int seed)
Definition MucRecHit.h:98
~MucRecHit()
Destructor.
Definition MucRecHit.cxx:94
int GetHitMode() const
Definition MucRecHit.h:96
MucRecHit & operator=(const MucRecHit &orig)
Assignment operator.
Definition MucRecHit.cxx:80
MucGeoGap * GetGap() const
Get geometry data for the gap containing this hit.
Definition MucRecHit.h:83
float GetIntersectY() const
Definition MucRecHit.h:109
Hep3Vector GetCenterPos() const
Get Center position of the strip (global coords).
Hep3Vector GetCenterSigma() const
Get Center position uncertainty of the strip (global coords).
float GetIntersectX() const
Definition MucRecHit.h:108
MucGeoStrip * GetStrip() const
Get geometry data for the strip containing this hit.
Definition MucRecHit.h:86
int Part() const
Get Part.
Definition MucRecHit.h:71
int Gap() const
Get Gap.
Definition MucRecHit.h:77
int Strip() const
Get Strip.
Definition MucRecHit.h:80
static const CLID & classID()
Definition MucRecHit.h:63
int GetPadID() const
Definition MucRecHit.h:107
void SetHitMode(int recmode)
Definition MucRecHit.h:94
void SetIntersectY(float y)
Definition MucRecHit.h:104
MucRecHit()
Constructor.
Definition MucRecHit.h:42
void SetIntersectX(float x)
Definition MucRecHit.h:103
Identifier GetID() const
Get soft identifier of this hit.
Definition MucRecHit.h:68
void SetPadID(int padID)
Definition MucRecHit.h:102
int HitIsSeed() const
Definition MucRecHit.h:100
virtual const CLID & clID() const
Definition MucRecHit.h:62