12#ifndef MUC_GEO_STRIP_H
13#define MUC_GEO_STRIP_H
15#include "TGeoMatrix.h"
17#include "TGeoPhysicalNode.h"
18#include <CLHEP/Geometry/Plane3D.h>
19#include <CLHEP/Geometry/Point3D.h>
20#include <CLHEP/Vector/ThreeVector.h>
22#ifndef ENABLE_BACKWARDS_COMPATIBILITY
25#ifndef ENABLE_BACKWARDS_COMPATIBILITY
29#include "MucGeomSvc/MucGeoGap.h"
51 int Part() {
return m_pGap->Part(); }
54 int Seg() {
return m_pGap->Seg(); }
57 int Gap() {
return m_pGap->Gap(); }
99 void SetStrip(
const float x1,
const float x2,
const float y1,
const float y2,
100 const float xSize,
const float ySize,
const float zSize );
103 void SetStrip( TGeoPhysicalNode* stripPhysicalNode );
117 bool IsInStrip(
const float x,
const float y,
const float z )
const;
130 float m_dzFarFrontGas;
131 float m_dzNearFrontGas;
132 float m_dzNearBackGas;
133 float m_dzFarBackGas;
HepGeom::Vector3D< double > HepVector3D
HepGeom::Point3D< double > HepPoint3D
HepGeom::Point3D< double > HepPoint3D
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).