ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | Static Private Attributes | List of all members
FPTracker::Plane Class Reference

#include <Plane.h>

Inheritance diagram for FPTracker::Plane:
Collaboration diagram for FPTracker::Plane:

Public Types

typedef std::shared_ptr< const PlaneConstPtr_t
 
typedef std::vector< ConstPtr_tContainer_t
 
typedef std::shared_ptr< IBeamElementPtr_t
 
typedef Container_t::iterator Iter_t
 
typedef Container_t::const_iterator ConstIter_t
 
typedef std::list< Ptr_tList_t
 
typedef List_t::iterator ListIter_t
 
typedef List_t::const_iterator ConstListIter_t
 

Public Member Functions

 Plane (double, Side)
 
IBeamElement::ConstPtr_t clone () const
 
double frontFace () const
 
double rearFace () const
 
double zabspos () const
 
double zsignedpos () const
 
Side side () const
 
Point position () const
 
std::string label () const
 
std::string str () const
 
bool isEndElement () const
 
void track (IParticle &) const
 
void calibrate (IParticle &)
 

Private Attributes

Point m_position
 
Side m_side
 

Static Private Attributes

static const std::string s_label ="Plane"
 

Detailed Description

Definition at line 19 of file FPTracker/FPTracker/Plane.h.

Member Typedef Documentation

◆ ConstIter_t

typedef Container_t::const_iterator FPTracker::IBeamElement::ConstIter_t
inherited

Definition at line 45 of file FPTracker/FPTracker/IBeamElement.h.

◆ ConstListIter_t

typedef List_t::const_iterator FPTracker::IBeamElement::ConstListIter_t
inherited

Definition at line 49 of file FPTracker/FPTracker/IBeamElement.h.

◆ ConstPtr_t

typedef std::shared_ptr< const Plane > FPTracker::Plane::ConstPtr_t

Definition at line 38 of file FPTracker/FPTracker/Plane.h.

◆ Container_t

typedef std::vector< ConstPtr_t > FPTracker::Plane::Container_t

Definition at line 39 of file FPTracker/FPTracker/Plane.h.

◆ Iter_t

typedef Container_t::iterator FPTracker::IBeamElement::Iter_t
inherited

Definition at line 44 of file FPTracker/FPTracker/IBeamElement.h.

◆ List_t

typedef std::list< Ptr_t > FPTracker::IBeamElement::List_t
inherited

Definition at line 47 of file FPTracker/FPTracker/IBeamElement.h.

◆ ListIter_t

typedef List_t::iterator FPTracker::IBeamElement::ListIter_t
inherited

Definition at line 48 of file FPTracker/FPTracker/IBeamElement.h.

◆ Ptr_t

typedef std::shared_ptr< IBeamElement > FPTracker::IBeamElement::Ptr_t
inherited

Definition at line 41 of file FPTracker/FPTracker/IBeamElement.h.

Constructor & Destructor Documentation

◆ Plane()

FPTracker::Plane::Plane ( double  zpos,
Side  side 
)

Definition at line 18 of file FPTracker/src/Plane.cxx.

18  :
19  m_position( 0., 0., 0. ), m_side(side)
20  {
21  assert(zpos >= 0.);
22  zpos = side == beam2 ? -zpos:zpos;
23  TransversePoint shift = beamlineXPosition(zpos);
24  m_position = Point(shift.x(), shift.y(), zpos);
25 
26  }

Member Function Documentation

◆ calibrate()

void FPTracker::Plane::calibrate ( IParticle particle)
virtual

Implements FPTracker::IBeamElement.

Definition at line 51 of file FPTracker/src/Plane.cxx.

52  {
53  return this->track(particle);
54  }

◆ clone()

IBeamElement::ConstPtr_t FPTracker::Plane::clone ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 28 of file FPTracker/src/Plane.cxx.

28  {
29  IBeamElement::ConstPtr_t pbe( new Plane(*this) );
30  return pbe;
31  }

◆ frontFace()

double FPTracker::Plane::frontFace ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 33 of file FPTracker/src/Plane.cxx.

33 {return m_position.z();}

◆ isEndElement()

bool FPTracker::Plane::isEndElement ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 64 of file FPTracker/src/Plane.cxx.

64 {return true;}

◆ label()

std::string FPTracker::Plane::label ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 15 of file FPTracker/src/Plane.cxx.

15 {return s_label;}

◆ position()

Point FPTracker::Plane::position ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 37 of file FPTracker/src/Plane.cxx.

37 {return m_position;}

◆ rearFace()

double FPTracker::Plane::rearFace ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 34 of file FPTracker/src/Plane.cxx.

34 {return m_position.z();}

◆ side()

Side FPTracker::Plane::side ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 38 of file FPTracker/src/Plane.cxx.

38 {return m_side;}

◆ str()

std::string FPTracker::Plane::str ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 56 of file FPTracker/src/Plane.cxx.

56  {
57  std::ostringstream ost;
58  ost<<"\n-- Plane --\n";
59  ost<<" position "<<m_position<<'\n';
60  ost<<" side "<<m_side<<'\n';
61  return ost.str();
62  }

◆ track()

void FPTracker::Plane::track ( IParticle particle) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 41 of file FPTracker/src/Plane.cxx.

42  {
43  particle.setBeamCoordinateShift(this);
44  if (particle.isOutOfAperture()){return;}
45  if (particle.displacement().mag2() > FPTrackerConstants::beamPipeRadius2){
46  particle.setOutOfAperture(true);
47  }
48 
49  }

◆ zabspos()

double FPTracker::Plane::zabspos ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 35 of file FPTracker/src/Plane.cxx.

35 {return std::fabs(m_position.z());}

◆ zsignedpos()

double FPTracker::Plane::zsignedpos ( ) const
virtual

Implements FPTracker::IBeamElement.

Definition at line 36 of file FPTracker/src/Plane.cxx.

36 {return m_position.z();}

Member Data Documentation

◆ m_position

Point FPTracker::Plane::m_position
private

Definition at line 46 of file FPTracker/FPTracker/Plane.h.

◆ m_side

Side FPTracker::Plane::m_side
private

Definition at line 47 of file FPTracker/FPTracker/Plane.h.

◆ s_label

const std::string FPTracker::Plane::s_label ="Plane"
staticprivate

Definition at line 45 of file FPTracker/FPTracker/Plane.h.


The documentation for this class was generated from the following files:
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
python.trigbs_prescaleL1.ost
ost
Definition: trigbs_prescaleL1.py:104
FPTracker::Plane::Plane
Plane(double, Side)
Definition: FPTracker/src/Plane.cxx:18
FPTracker::Plane::m_position
Point m_position
Definition: FPTracker/FPTracker/Plane.h:46
FPTracker::Plane::track
void track(IParticle &) const
Definition: FPTracker/src/Plane.cxx:41
Point
ChargedTracksWeightFilter::Spline::Point Point
Definition: ChargedTracksWeightFilter.cxx:11
FPTracker::Plane::s_label
static const std::string s_label
Definition: FPTracker/FPTracker/Plane.h:45
FPTracker::beam2
@ beam2
Definition: FPTrackerConstants.h:12
FPTracker::beamlineXPosition
TransversePoint beamlineXPosition(double z)
Definition: beamlineXPosition.cxx:11
FPTracker::IBeamElement::ConstPtr_t
std::shared_ptr< const IBeamElement > ConstPtr_t
Definition: FPTracker/FPTracker/IBeamElement.h:40
FPTracker::Point::z
double z() const
Definition: FPTracker/src/Point.cxx:19
FPTracker::Plane::m_side
Side m_side
Definition: FPTracker/FPTracker/Plane.h:47
FPTracker::FPTrackerConstants::beamPipeRadius2
static const double beamPipeRadius2
Definition: FPTrackerConstants.h:15
FPTracker::Plane::side
Side side() const
Definition: FPTracker/src/Plane.cxx:38