BOSS 7.0.1
BESIII Offline Software System
Loading...
Searching...
No Matches
Muc/MucRecEvent/MucRecEvent-00-02-52/MucRecEvent/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"
21#include "EventModel/EventModel.h"
22#include "Identifier/Identifier.h"
23#include "MucGeomSvc/MucGeomSvc.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.
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.
58
59 /// Destructor.
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
HepGeom::Vector3D< double > HepVector3D
const CLID & CLID_MucRecHit
Definition: EventModel.cxx:347
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
MucRecHit(const Identifier &id)
Constructor.
~MucRecHit()
Destructor.
MucRecHit(const MucRecHit &source)
Copy constructor.
MucRecHit & operator=(const MucRecHit &orig)
Assignment operator.
MucGeoGap * GetGap() const
Get geometry data for the gap containing this hit.
Hep3Vector GetCenterPos() const
Get Center position of the strip (global coords).
Hep3Vector GetCenterSigma() const
Get Center position uncertainty of the strip (global coords).
MucGeoStrip * GetStrip() const
Get geometry data for the strip containing this hit.
Identifier GetID() const
Get soft identifier of this hit.
MucRecHit(const int part=-1, const int seg=-1, const int gap=-1, const int strip=-1)
Constructor.