12#ifndef MUC_GEO_STRIP_H
13#define MUC_GEO_STRIP_H
15#include <CLHEP/Vector/ThreeVector.h>
16#include <CLHEP/Geometry/Point3D.h>
17#include <CLHEP/Geometry/Plane3D.h>
19#include "TGeoMatrix.h"
20#include "TGeoPhysicalNode.h"
22#ifndef ENABLE_BACKWARDS_COMPATIBILITY
25#ifndef ENABLE_BACKWARDS_COMPATIBILITY
29#include "MucGeomSvc/MucGeoGap.h"
102 const float y1,
const float y2,
108 void SetStrip(TGeoPhysicalNode *stripPhysicalNode);
122 bool IsInStrip(
const float x,
const float y,
const float z)
const;
136 float m_dzFarFrontGas;
137 float m_dzNearFrontGas;
138 float m_dzNearBackGas;
139 float m_dzFarBackGas;
HepGeom::Point3D< double > HepPoint3D
HepGeom::Vector3D< double > HepVector3D
int Seg() const
Get seg identifier (0-7).
int Gap() const
Get gap identifier (0-8).
int Part() const
Get part identifier (0,2 for cap, 1 for barrel).
float GetYmin() const
Get position of low-Y edge in the gap coordinate system.
void SetLeftNeighbor(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 GetHitStatus() const
Get the strip hit status.
float GetZmax() const
Get position of high-Z edge in the gap coordinate system.
MucGeoStrip(const int strip, MucGeoGap *const pGap)
Default constructor.
float GetXmax() const
Get position of high-X edge in the gap coordinate system.
float GetXmin() const
Get position of low-X edge in the gap coordinate system.
bool CrossGasChamber(const HepPoint3D linePoint, const Hep3Vector lineDir) const
Does the line cross this strip?
float GetZmin() const
Get position of low-Z edge in the gap coordinate system.
void SetStrip(TGeoPhysicalNode *stripPhysicalNode)
Set strip from ROOT.
void SetRightNeighbor(MucGeoStrip *p)
Set pointer to the adjacent strip on the +X or +Y side of this one.
MucGeoStrip * GetLeftNeighbor() const
Get the pointer to the adjacent strip on the -X or -Y side of this one.
float GetYmax() const
Get position of high-Y edge in the gap coordinate system.
MucGeoGap * GetGap() const
Get the pointer to the gap that contains the strip.
MucGeoStrip * GetRightNeighbor() const
Get the pointer to the adjacent strip on the +X or +Y side of this one.
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).
~MucGeoStrip()
Desctructor.
bool IsInStrip(const float x, const float y, const float z) const
Is the point within the boundaries of this strip?
int Part()
Get the softID.
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).