BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
MucGeoStrip Class Reference

#include <MucGeoStrip.h>

Public Member Functions

 MucGeoStrip (const int strip, MucGeoGap *const pGap)
 Default constructor.
 ~MucGeoStrip ()
 Desctructor.
int Part ()
 Get the softID.
int Seg ()
 Get Seg No.
int Gap ()
 Get Gap No.
int Strip ()
 Get Strip No.
MucGeoGapGetGap () const
 Get the pointer to the gap that contains the strip.
MucGeoStripGetLeftNeighbor () const
 Get the pointer to the adjacent strip on the -X or -Y side of this one.
MucGeoStripGetRightNeighbor () const
 Get the pointer to the adjacent strip on the +X or +Y side of this one.
float GetXmin () const
 Get position of low-X edge in the gap coordinate system.
float GetXmax () const
 Get position of high-X edge in the gap coordinate system.
float GetYmin () const
 Get position of low-Y edge in the gap coordinate system.
float GetYmax () const
 Get position of high-Y edge in the gap coordinate system.
float GetZmin () const
 Get position of low-Z edge in the gap coordinate system.
float GetZmax () const
 Get position of high-Z edge in the gap coordinate system.
void GetCenterPos (float &x, float &y, float &z) const
 Get center position of this strip (in the gap coordinate system).
void GetCenterSigma (float &sx, float &sy, float &sz)
 Get uncertainty in the position of this strip (in the gap coordinate system).
bool GetHitStatus () const
 Get the strip hit status.
void SetStrip (const float x1, const float x2, const float y1, const float y2, const float xSize, const float ySize, const float zSize)
 Set the edge, center and sigma of the strip (in the gap coordinate system).
void SetStrip (TGeoPhysicalNode *stripPhysicalNode)
 Set strip from ROOT.
void SetLeftNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the -X or -Y side of this one.
void SetRightNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the +X or +Y side of this one.
void SetHitStatus (const bool hit)
 Set the strip hit status.
bool IsInStrip (const float x, const float y, const float z) const
 Is the point within the boundaries of this strip?
bool CrossGasChamber (const HepPoint3D linePoint, const Hep3Vector lineDir) const
 Does the line cross this strip?
 MucGeoStrip (const int strip, MucGeoGap *const pGap)
 Default constructor.
 ~MucGeoStrip ()
 Desctructor.
int Part ()
 Get the softID.
int Seg ()
 Get Seg No.
int Gap ()
 Get Gap No.
int Strip ()
 Get Strip No.
MucGeoGapGetGap () const
 Get the pointer to the gap that contains the strip.
MucGeoStripGetLeftNeighbor () const
 Get the pointer to the adjacent strip on the -X or -Y side of this one.
MucGeoStripGetRightNeighbor () const
 Get the pointer to the adjacent strip on the +X or +Y side of this one.
float GetXmin () const
 Get position of low-X edge in the gap coordinate system.
float GetXmax () const
 Get position of high-X edge in the gap coordinate system.
float GetYmin () const
 Get position of low-Y edge in the gap coordinate system.
float GetYmax () const
 Get position of high-Y edge in the gap coordinate system.
float GetZmin () const
 Get position of low-Z edge in the gap coordinate system.
float GetZmax () const
 Get position of high-Z edge in the gap coordinate system.
void GetCenterPos (float &x, float &y, float &z) const
 Get center position of this strip (in the gap coordinate system).
void GetCenterSigma (float &sx, float &sy, float &sz)
 Get uncertainty in the position of this strip (in the gap coordinate system).
bool GetHitStatus () const
 Get the strip hit status.
void SetStrip (const float x1, const float x2, const float y1, const float y2, const float xSize, const float ySize, const float zSize)
 Set the edge, center and sigma of the strip (in the gap coordinate system).
void SetStrip (TGeoPhysicalNode *stripPhysicalNode)
 Set strip from ROOT.
void SetLeftNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the -X or -Y side of this one.
void SetRightNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the +X or +Y side of this one.
void SetHitStatus (const bool hit)
 Set the strip hit status.
bool IsInStrip (const float x, const float y, const float z) const
 Is the point within the boundaries of this strip?
bool CrossGasChamber (const HepPoint3D linePoint, const Hep3Vector lineDir) const
 Does the line cross this strip?
 MucGeoStrip (const int strip, MucGeoGap *const pGap)
 Default constructor.
 ~MucGeoStrip ()
 Desctructor.
int Part ()
 Get the softID.
int Seg ()
 Get Seg No.
int Gap ()
 Get Gap No.
int Strip ()
 Get Strip No.
MucGeoGapGetGap () const
 Get the pointer to the gap that contains the strip.
MucGeoStripGetLeftNeighbor () const
 Get the pointer to the adjacent strip on the -X or -Y side of this one.
MucGeoStripGetRightNeighbor () const
 Get the pointer to the adjacent strip on the +X or +Y side of this one.
float GetXmin () const
 Get position of low-X edge in the gap coordinate system.
float GetXmax () const
 Get position of high-X edge in the gap coordinate system.
float GetYmin () const
 Get position of low-Y edge in the gap coordinate system.
float GetYmax () const
 Get position of high-Y edge in the gap coordinate system.
float GetZmin () const
 Get position of low-Z edge in the gap coordinate system.
float GetZmax () const
 Get position of high-Z edge in the gap coordinate system.
void GetCenterPos (float &x, float &y, float &z) const
 Get center position of this strip (in the gap coordinate system).
void GetCenterSigma (float &sx, float &sy, float &sz)
 Get uncertainty in the position of this strip (in the gap coordinate system).
bool GetHitStatus () const
 Get the strip hit status.
void SetStrip (const float x1, const float x2, const float y1, const float y2, const float xSize, const float ySize, const float zSize)
 Set the edge, center and sigma of the strip (in the gap coordinate system).
void SetStrip (TGeoPhysicalNode *stripPhysicalNode)
 Set strip from ROOT.
void SetLeftNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the -X or -Y side of this one.
void SetRightNeighbor (MucGeoStrip *p)
 Set pointer to the adjacent strip on the +X or +Y side of this one.
void SetHitStatus (const bool hit)
 Set the strip hit status.
bool IsInStrip (const float x, const float y, const float z) const
 Is the point within the boundaries of this strip?
bool CrossGasChamber (const HepPoint3D linePoint, const Hep3Vector lineDir) const
 Does the line cross this strip?

Detailed Description

Class MucGeoStrip describes a single strip in a gap of the muon chamber

Author
Zhengyun You \URL{youzy.nosp@m.@pku.nosp@m..edu..nosp@m.cn}

Definition at line 40 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

Constructor & Destructor Documentation

◆ MucGeoStrip() [1/3]

MucGeoStrip::MucGeoStrip ( const int strip,
MucGeoGap *const pGap )

Default constructor.

Definition at line 20 of file MucGeoStrip.cxx.

21 : m_Strip( strip )
22 , m_pGap( pGap )
23 , m_pLeftNeighbor( 0L )
24 , m_pRightNeighbor( 0L )
25 , m_CenterPos( 0.0, 0.0, 0.0 )
26 , m_CenterSigma( 0.0, 0.0, 0.0 ) {
27 // Constructor (dummy strip position and sizes).
28}

Referenced by CrossGasChamber(), GetLeftNeighbor(), GetRightNeighbor(), SetLeftNeighbor(), and SetRightNeighbor().

◆ ~MucGeoStrip() [1/3]

MucGeoStrip::~MucGeoStrip ( )

Desctructor.

Definition at line 30 of file MucGeoStrip.cxx.

30 {
31 // Destructor.
32 m_pLeftNeighbor = 0L;
33 m_pRightNeighbor = 0L;
34 m_pGap = 0L;
35}

◆ MucGeoStrip() [2/3]

MucGeoStrip::MucGeoStrip ( const int strip,
MucGeoGap *const pGap )

Default constructor.

◆ ~MucGeoStrip() [2/3]

MucGeoStrip::~MucGeoStrip ( )

Desctructor.

◆ MucGeoStrip() [3/3]

MucGeoStrip::MucGeoStrip ( const int strip,
MucGeoGap *const pGap )

Default constructor.

◆ ~MucGeoStrip() [3/3]

MucGeoStrip::~MucGeoStrip ( )

Desctructor.

Member Function Documentation

◆ CrossGasChamber() [1/3]

bool MucGeoStrip::CrossGasChamber ( const HepPoint3D linePoint,
const Hep3Vector lineDir ) const

Does the line cross this strip?

Definition at line 139 of file MucGeoStrip.cxx.

140 {
141 // Does the line cross this strip?
142
143 // We need to define the 6 planes then loop over to check for intersection.
144 // All are defined in the gap coordinate.
145 HepPlane3D stripSide[6];
146
147 // Xmin.
148 HepPoint3D p0Xmin( m_Xmin, m_Ymin, m_dzFarFrontGas );
149 HepPoint3D p1Xmin( m_Xmin, m_Ymax, m_dzFarFrontGas );
150 HepPoint3D p2Xmin( m_Xmin, m_Ymin, m_dzFarBackGas );
151 HepPlane3D plane0( p0Xmin, p1Xmin, p2Xmin );
152 stripSide[0] = plane0;
153
154 // Xmax.
155 HepPoint3D p0Xmax( m_Xmax, m_Ymin, m_dzFarFrontGas );
156 HepPoint3D p1Xmax( m_Xmax, m_Ymax, m_dzFarFrontGas );
157 HepPoint3D p2Xmax( m_Xmax, m_Ymin, m_dzFarBackGas );
158 HepPlane3D plane1( p0Xmax, p1Xmax, p2Xmax );
159 stripSide[1] = plane1;
160
161 // Ymin.
162 HepPoint3D p0Ymin( m_Xmin, m_Ymin, m_dzFarFrontGas );
163 HepPoint3D p1Ymin( m_Xmax, m_Ymin, m_dzFarFrontGas );
164 HepPoint3D p2Ymin( m_Xmin, m_Ymin, m_dzFarBackGas );
165 HepPlane3D plane2( p0Ymin, p1Ymin, p2Ymin );
166 stripSide[2] = plane2;
167
168 // Ymax.
169 HepPoint3D p0Ymax( m_Xmin, m_Ymax, m_dzFarFrontGas );
170 HepPoint3D p1Ymax( m_Xmax, m_Ymax, m_dzFarFrontGas );
171 HepPoint3D p2Ymax( m_Xmin, m_Ymax, m_dzFarBackGas );
172 HepPlane3D plane3( p0Ymax, p1Ymax, p2Ymax );
173 stripSide[3] = plane3;
174
175 // Zmin.
176 HepPoint3D p0Zmin( m_Xmin, m_Ymin, m_dzFarFrontGas );
177 HepPoint3D p1Zmin( m_Xmax, m_Ymin, m_dzFarFrontGas );
178 HepPoint3D p2Zmin( m_Xmin, m_Ymax, m_dzFarFrontGas );
179 HepPlane3D plane4( p0Zmin, p1Zmin, p2Zmin );
180 stripSide[4] = plane4;
181
182 // Zmax.
183 HepPoint3D p0Zmax( m_Xmin, m_Ymin, m_dzFarBackGas );
184 HepPoint3D p1Zmax( m_Xmax, m_Ymin, m_dzFarBackGas );
185 HepPoint3D p2Zmax( m_Xmin, m_Ymax, m_dzFarBackGas );
186 HepPlane3D plane5( p0Zmax, p1Zmax, p2Zmax );
187 stripSide[5] = plane5;
188
189 // cout << m_Xmin << " " << m_Xmax << endl
190 // << m_Ymin << " " << m_Ymax << endl
191 // << m_dzFarFrontGas << " " << m_dzFarBackGas << endl;
192
193 // If particle intersects this strip there should only be two crossings.
194 int numIntersections = 0;
195 MucGeometron geometron;
196 bool intersectFlag = 0;
197 HepPoint3D gCross( 0, 0, 0 );
198
199 for ( int sideID = 0; sideID < 6; sideID++ )
200 {
201 intersectFlag =
202 geometron.GetIntersectionLinePlane( linePoint, lineDir, stripSide[sideID], gCross );
203 if ( intersectFlag &&
204 ( gCross.x() >= m_Xmin - 1 ) && // expend strip size, to avoid gap between two strip
205 ( gCross.x() <= m_Xmax + 1 ) && ( gCross.y() >= m_Ymin - 1 ) &&
206 ( gCross.y() <= m_Ymax + 1 ) &&
207 ( ( gCross.z() >= m_dzFarFrontGas && gCross.z() <= m_dzNearFrontGas ) ||
208 ( gCross.z() >= m_dzNearBackGas && gCross.z() <= m_dzFarBackGas ) ) )
209 {
210 numIntersections++;
211 // cout << m_StripID.GetStrip() << gCross << endl;
212 }
213 }
214
215 // if( numIntersections == 1 ) {
216 // cout<<"MucGeoStrip::IntersectStrip(): Warning only one intersection. Should be two!" <<
217 // endl;
218 // }
219
220 if ( numIntersections > 2 )
221 {
222 // cout<<"MucGeoStrip::CrossGasChamber(): Warning too many intersections "
223 // << numIntersections
224 // << endl;
225 }
226
227 if ( numIntersections > 0 ) return true;
228
229 return false;
230}
HepGeom::Plane3D< double > HepPlane3D
HepGeom::Point3D< double > HepPoint3D
bool GetIntersectionLinePlane(const HepPoint3D pLine, const Hep3Vector vectLine, const HepPlane3D plane, HepPoint3D &cross)
Get intersection of a line and a plane.

Referenced by MucGeoGeneral::FindIntersectStrips(), and MucGeoGeneral::FindIntersectStrips().

◆ CrossGasChamber() [2/3]

bool MucGeoStrip::CrossGasChamber ( const HepPoint3D linePoint,
const Hep3Vector lineDir ) const

Does the line cross this strip?

◆ CrossGasChamber() [3/3]

bool MucGeoStrip::CrossGasChamber ( const HepPoint3D linePoint,
const Hep3Vector lineDir ) const

Does the line cross this strip?

◆ Gap() [1/3]

int MucGeoStrip::Gap ( )
inline

Get Gap No.

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

57{ return m_pGap->Gap(); }

◆ Gap() [2/3]

int MucGeoStrip::Gap ( )
inline

Get Gap No.

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

57{ return m_pGap->Gap(); }

◆ Gap() [3/3]

int MucGeoStrip::Gap ( )
inline

Get Gap No.

Definition at line 57 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

57{ return m_pGap->Gap(); }

◆ GetCenterPos() [1/3]

void MucGeoStrip::GetCenterPos ( float & x,
float & y,
float & z ) const

Get center position of this strip (in the gap coordinate system).

Definition at line 37 of file MucGeoStrip.cxx.

37 {
38 // Get center position of this strip (in the gap coordinate system).
39 x = m_CenterPos.x();
40 y = m_CenterPos.y();
41 z = m_CenterPos.z();
42
43 return;
44}
Double_t x[10]

Referenced by MucGeoGeneral::FindIntersectStrips(), MucGeoGap::GuessStrip(), and main().

◆ GetCenterPos() [2/3]

void MucGeoStrip::GetCenterPos ( float & x,
float & y,
float & z ) const

Get center position of this strip (in the gap coordinate system).

◆ GetCenterPos() [3/3]

void MucGeoStrip::GetCenterPos ( float & x,
float & y,
float & z ) const

Get center position of this strip (in the gap coordinate system).

◆ GetCenterSigma() [1/3]

void MucGeoStrip::GetCenterSigma ( float & sx,
float & sy,
float & sz )

Get uncertainty in the position of this strip (in the gap coordinate system).

Definition at line 46 of file MucGeoStrip.cxx.

46 {
47 // Get uncertainty in the position of this strip (in the gap coordinate system).
48 sx = m_CenterSigma.x();
49 sy = m_CenterSigma.y();
50 sz = m_CenterSigma.z();
51
52 return;
53}

Referenced by ExtMucKal::TrackHit().

◆ GetCenterSigma() [2/3]

void MucGeoStrip::GetCenterSigma ( float & sx,
float & sy,
float & sz )

Get uncertainty in the position of this strip (in the gap coordinate system).

◆ GetCenterSigma() [3/3]

void MucGeoStrip::GetCenterSigma ( float & sx,
float & sy,
float & sz )

Get uncertainty in the position of this strip (in the gap coordinate system).

◆ GetGap() [1/3]

MucGeoGap * MucGeoStrip::GetGap ( ) const
inline

Get the pointer to the gap that contains the strip.

Definition at line 63 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

63{ return m_pGap; }

Referenced by main(), SetStrip(), and SetStrip().

◆ GetGap() [2/3]

MucGeoGap * MucGeoStrip::GetGap ( ) const
inline

Get the pointer to the gap that contains the strip.

Definition at line 63 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

63{ return m_pGap; }

◆ GetGap() [3/3]

MucGeoGap * MucGeoStrip::GetGap ( ) const
inline

Get the pointer to the gap that contains the strip.

Definition at line 63 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

63{ return m_pGap; }

◆ GetHitStatus() [1/3]

bool MucGeoStrip::GetHitStatus ( ) const
inline

Get the strip hit status.

Definition at line 96 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

96{ return m_HitStatus; }

◆ GetHitStatus() [2/3]

bool MucGeoStrip::GetHitStatus ( ) const
inline

Get the strip hit status.

Definition at line 96 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

96{ return m_HitStatus; }

◆ GetHitStatus() [3/3]

bool MucGeoStrip::GetHitStatus ( ) const
inline

Get the strip hit status.

Definition at line 96 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

96{ return m_HitStatus; }

◆ GetLeftNeighbor() [1/3]

MucGeoStrip * MucGeoStrip::GetLeftNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the -X or -Y side of this one.

Definition at line 66 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

66{ return m_pLeftNeighbor; }

◆ GetLeftNeighbor() [2/3]

MucGeoStrip * MucGeoStrip::GetLeftNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the -X or -Y side of this one.

Definition at line 66 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

66{ return m_pLeftNeighbor; }

◆ GetLeftNeighbor() [3/3]

MucGeoStrip * MucGeoStrip::GetLeftNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the -X or -Y side of this one.

Definition at line 66 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

66{ return m_pLeftNeighbor; }

◆ GetRightNeighbor() [1/3]

MucGeoStrip * MucGeoStrip::GetRightNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the +X or +Y side of this one.

Definition at line 69 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

69{ return m_pRightNeighbor; }

◆ GetRightNeighbor() [2/3]

MucGeoStrip * MucGeoStrip::GetRightNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the +X or +Y side of this one.

Definition at line 69 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

69{ return m_pRightNeighbor; }

◆ GetRightNeighbor() [3/3]

MucGeoStrip * MucGeoStrip::GetRightNeighbor ( ) const
inline

Get the pointer to the adjacent strip on the +X or +Y side of this one.

Definition at line 69 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

69{ return m_pRightNeighbor; }

◆ GetXmax() [1/3]

float MucGeoStrip::GetXmax ( ) const
inline

Get position of high-X edge in the gap coordinate system.

Definition at line 75 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

75{ return m_Xmax; }

Referenced by MucGeoGeneral::FindIntersectStrips().

◆ GetXmax() [2/3]

float MucGeoStrip::GetXmax ( ) const
inline

Get position of high-X edge in the gap coordinate system.

Definition at line 75 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

75{ return m_Xmax; }

◆ GetXmax() [3/3]

float MucGeoStrip::GetXmax ( ) const
inline

Get position of high-X edge in the gap coordinate system.

Definition at line 75 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

75{ return m_Xmax; }

◆ GetXmin() [1/3]

float MucGeoStrip::GetXmin ( ) const
inline

Get position of low-X edge in the gap coordinate system.

Definition at line 72 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

72{ return m_Xmin; }

Referenced by MucGeoGeneral::FindIntersectStrips().

◆ GetXmin() [2/3]

float MucGeoStrip::GetXmin ( ) const
inline

Get position of low-X edge in the gap coordinate system.

Definition at line 72 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

72{ return m_Xmin; }

◆ GetXmin() [3/3]

float MucGeoStrip::GetXmin ( ) const
inline

Get position of low-X edge in the gap coordinate system.

Definition at line 72 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

72{ return m_Xmin; }

◆ GetYmax() [1/3]

float MucGeoStrip::GetYmax ( ) const
inline

Get position of high-Y edge in the gap coordinate system.

Definition at line 81 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

81{ return m_Ymax; }

Referenced by MucGeoGeneral::FindIntersectStrips().

◆ GetYmax() [2/3]

float MucGeoStrip::GetYmax ( ) const
inline

Get position of high-Y edge in the gap coordinate system.

Definition at line 81 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

81{ return m_Ymax; }

◆ GetYmax() [3/3]

float MucGeoStrip::GetYmax ( ) const
inline

Get position of high-Y edge in the gap coordinate system.

Definition at line 81 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

81{ return m_Ymax; }

◆ GetYmin() [1/3]

float MucGeoStrip::GetYmin ( ) const
inline

Get position of low-Y edge in the gap coordinate system.

Definition at line 78 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

78{ return m_Ymin; }

Referenced by MucGeoGeneral::FindIntersectStrips().

◆ GetYmin() [2/3]

float MucGeoStrip::GetYmin ( ) const
inline

Get position of low-Y edge in the gap coordinate system.

Definition at line 78 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

78{ return m_Ymin; }

◆ GetYmin() [3/3]

float MucGeoStrip::GetYmin ( ) const
inline

Get position of low-Y edge in the gap coordinate system.

Definition at line 78 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

78{ return m_Ymin; }

◆ GetZmax() [1/3]

float MucGeoStrip::GetZmax ( ) const
inline

Get position of high-Z edge in the gap coordinate system.

Definition at line 87 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

87{ return m_Zmax; }

◆ GetZmax() [2/3]

float MucGeoStrip::GetZmax ( ) const
inline

Get position of high-Z edge in the gap coordinate system.

Definition at line 87 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

87{ return m_Zmax; }

◆ GetZmax() [3/3]

float MucGeoStrip::GetZmax ( ) const
inline

Get position of high-Z edge in the gap coordinate system.

Definition at line 87 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

87{ return m_Zmax; }

◆ GetZmin() [1/3]

float MucGeoStrip::GetZmin ( ) const
inline

Get position of low-Z edge in the gap coordinate system.

Definition at line 84 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

84{ return m_Zmin; }

◆ GetZmin() [2/3]

float MucGeoStrip::GetZmin ( ) const
inline

Get position of low-Z edge in the gap coordinate system.

Definition at line 84 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

84{ return m_Zmin; }

◆ GetZmin() [3/3]

float MucGeoStrip::GetZmin ( ) const
inline

Get position of low-Z edge in the gap coordinate system.

Definition at line 84 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

84{ return m_Zmin; }

◆ IsInStrip() [1/3]

bool MucGeoStrip::IsInStrip ( const float x,
const float y,
const float z ) const

Is the point within the boundaries of this strip?

Definition at line 133 of file MucGeoStrip.cxx.

133 {
134 // Is the point within the boundaries of this strip?
135 return ( ( x > m_Xmin ) && ( x < m_Xmax ) && ( y > m_Ymin ) && ( y < m_Ymax ) &&
136 ( z >= m_dzFarFrontGas ) && ( z <= m_dzFarBackGas ) );
137}

◆ IsInStrip() [2/3]

bool MucGeoStrip::IsInStrip ( const float x,
const float y,
const float z ) const

Is the point within the boundaries of this strip?

◆ IsInStrip() [3/3]

bool MucGeoStrip::IsInStrip ( const float x,
const float y,
const float z ) const

Is the point within the boundaries of this strip?

◆ Part() [1/3]

int MucGeoStrip::Part ( )
inline

Get the softID.

Get Part No.

Definition at line 51 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

51{ return m_pGap->Part(); }

◆ Part() [2/3]

int MucGeoStrip::Part ( )
inline

Get the softID.

Get Part No.

Definition at line 51 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

51{ return m_pGap->Part(); }

◆ Part() [3/3]

int MucGeoStrip::Part ( )
inline

Get the softID.

Get Part No.

Definition at line 51 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

51{ return m_pGap->Part(); }

◆ Seg() [1/3]

int MucGeoStrip::Seg ( )
inline

Get Seg No.

Definition at line 54 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

54{ return m_pGap->Seg(); }

◆ Seg() [2/3]

int MucGeoStrip::Seg ( )
inline

Get Seg No.

Definition at line 54 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

54{ return m_pGap->Seg(); }

◆ Seg() [3/3]

int MucGeoStrip::Seg ( )
inline

Get Seg No.

Definition at line 54 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

54{ return m_pGap->Seg(); }

◆ SetHitStatus() [1/3]

void MucGeoStrip::SetHitStatus ( const bool hit)
inline

Set the strip hit status.

Definition at line 114 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

114{ m_HitStatus = hit; }

◆ SetHitStatus() [2/3]

void MucGeoStrip::SetHitStatus ( const bool hit)
inline

Set the strip hit status.

Definition at line 114 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

114{ m_HitStatus = hit; }

◆ SetHitStatus() [3/3]

void MucGeoStrip::SetHitStatus ( const bool hit)
inline

Set the strip hit status.

Definition at line 114 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

114{ m_HitStatus = hit; }

◆ SetLeftNeighbor() [1/3]

void MucGeoStrip::SetLeftNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the -X or -Y side of this one.

Set pointer to the adjacent strip on the -X or -Y side of this one.

Definition at line 121 of file MucGeoStrip.cxx.

121 {
122 /// Set pointer to the adjacent strip on the -X or -Y side of this one.
123 // (0 if no neighbor in this gap).
124 if ( p ) m_pLeftNeighbor = p;
125}

Referenced by MucGeoGap::AddStrip().

◆ SetLeftNeighbor() [2/3]

void MucGeoStrip::SetLeftNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the -X or -Y side of this one.

◆ SetLeftNeighbor() [3/3]

void MucGeoStrip::SetLeftNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the -X or -Y side of this one.

◆ SetRightNeighbor() [1/3]

void MucGeoStrip::SetRightNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the +X or +Y side of this one.

Set pointer to the adjacent strip on the +X or +Y side of this one.

Definition at line 127 of file MucGeoStrip.cxx.

127 {
128 /// Set pointer to the adjacent strip on the +X or +Y side of this one.
129 // (0 if no neighbor in this gap).
130 if ( p ) m_pRightNeighbor = p;
131}

Referenced by MucGeoGap::AddStrip().

◆ SetRightNeighbor() [2/3]

void MucGeoStrip::SetRightNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the +X or +Y side of this one.

◆ SetRightNeighbor() [3/3]

void MucGeoStrip::SetRightNeighbor ( MucGeoStrip * p)

Set pointer to the adjacent strip on the +X or +Y side of this one.

◆ SetStrip() [1/6]

void MucGeoStrip::SetStrip ( const float x1,
const float x2,
const float y1,
const float y2,
const float xSize,
const float ySize,
const float zSize )

Set the edge, center and sigma of the strip (in the gap coordinate system).

Definition at line 55 of file MucGeoStrip.cxx.

56 {
57 // Set the edge, center and sigma of the strip (in the gap coordinate system).
58 double un = 1.0; // Uncertainty.
59
60 m_Xmin = x1;
61 m_Xmax = x2;
62 m_Ymin = y1;
63 m_Ymax = y2;
64 m_Zmin = -0.5 * zSize;
65 m_Zmax = 0.5 * zSize;
66
67 m_dzFarFrontGas = GetGap()->GetdzFarFrontGas();
68 m_dzNearFrontGas = GetGap()->GetdzNearFrontGas();
69 m_dzNearBackGas = GetGap()->GetdzNearBackGas();
70 m_dzFarBackGas = GetGap()->GetdzFarBackGas();
71
72 m_CenterPos.setX( 0.5 * ( m_Xmin + m_Xmax ) );
73 m_CenterPos.setY( 0.5 * ( m_Ymin + m_Ymax ) );
74 m_CenterPos.setZ( 0.0 );
75
76 m_CenterSigma.setX( un * xSize );
77 m_CenterSigma.setY( un * ySize );
78 m_CenterSigma.setZ( un * zSize );
79}
float GetdzNearFrontGas() const
Get m_dzNearFrontGas;.
MucGeoGap * GetGap() const
Get the pointer to the gap that contains the strip.

Referenced by MucGeoGeneral::InitFromASCII(), and MucGeoGeneral::InitFromXML().

◆ SetStrip() [2/6]

void MucGeoStrip::SetStrip ( const float x1,
const float x2,
const float y1,
const float y2,
const float xSize,
const float ySize,
const float zSize )

Set the edge, center and sigma of the strip (in the gap coordinate system).

◆ SetStrip() [3/6]

void MucGeoStrip::SetStrip ( const float x1,
const float x2,
const float y1,
const float y2,
const float xSize,
const float ySize,
const float zSize )

Set the edge, center and sigma of the strip (in the gap coordinate system).

◆ SetStrip() [4/6]

void MucGeoStrip::SetStrip ( TGeoPhysicalNode * stripPhysicalNode)

Set strip from ROOT.

Definition at line 81 of file MucGeoStrip.cxx.

81 {
82 // Set the edge, center and sigma of the strip (in the gap coordinate system).
83 double un = 1.0; // Uncertainty.
84
85 TGeoBBox* stripBox = (TGeoBBox*)stripPhysicalNode->GetShape();
86
87 double xSize = 2.0 * stripBox->GetDX();
88 double ySize = 2.0 * stripBox->GetDY();
89 double zSize = 2.0 * stripBox->GetDZ();
90
91 m_dzFarFrontGas = GetGap()->GetdzFarFrontGas();
92 m_dzNearFrontGas = GetGap()->GetdzNearFrontGas();
93 m_dzNearBackGas = GetGap()->GetdzNearBackGas();
94 m_dzFarBackGas = GetGap()->GetdzFarBackGas();
95
96 double eTrans[3], *pTrans;
97 pTrans = eTrans;
98 // int level = stripPhysicalNode->GetLevel();
99 double eLocal[3], *pLocal;
100 pLocal = eLocal;
101 for ( int i = 0; i < 3; i++ ) pLocal[i] = 0.0;
102 stripPhysicalNode->GetNode()->LocalToMaster( pLocal, pTrans );
103
104 m_CenterPos.setX( pTrans[0] );
105 m_CenterPos.setY( pTrans[1] );
106 m_CenterPos.setZ( pTrans[2] );
107
108 m_Xmin = pTrans[0] - 0.5 * xSize;
109 m_Xmax = pTrans[0] + 0.5 * xSize;
110 m_Ymin = pTrans[1] - 0.5 * ySize;
111 m_Ymax = pTrans[1] + 0.5 * ySize;
112 m_Zmin = pTrans[2] - 0.5 * zSize;
113 m_Zmax = pTrans[2] + 0.5 * zSize;
114
115 m_CenterSigma.setX( un * xSize );
116 m_CenterSigma.setY( un * ySize );
117 m_CenterSigma.setZ( un * zSize );
118 // cout << m_CenterPos << endl;
119}

◆ SetStrip() [5/6]

void MucGeoStrip::SetStrip ( TGeoPhysicalNode * stripPhysicalNode)

Set strip from ROOT.

◆ SetStrip() [6/6]

void MucGeoStrip::SetStrip ( TGeoPhysicalNode * stripPhysicalNode)

Set strip from ROOT.

◆ Strip() [1/3]

int MucGeoStrip::Strip ( )
inline

Get Strip No.

Definition at line 60 of file InstallArea/x86_64-el9-gcc13-dbg/include/MucGeomSvc/MucGeoStrip.h.

60{ return m_Strip; }

◆ Strip() [2/3]

int MucGeoStrip::Strip ( )
inline

Get Strip No.

Definition at line 60 of file InstallArea/x86_64-el9-gcc13-opt/include/MucGeomSvc/MucGeoStrip.h.

60{ return m_Strip; }

◆ Strip() [3/3]

int MucGeoStrip::Strip ( )
inline

Get Strip No.

Definition at line 60 of file Muc/MucGeomSvc/include/MucGeomSvc/MucGeoStrip.h.

60{ return m_Strip; }

The documentation for this class was generated from the following files: