ATLAS Offline Software
Loading...
Searching...
No Matches
ForwardTracker::Collimator Class Reference

#include <Collimator.h>

Inheritance diagram for ForwardTracker::Collimator:
Collaboration diagram for ForwardTracker::Collimator:

Public Types

typedef std::shared_ptr< const CollimatorConstPtr_t
typedef std::vector< ConstPtr_tContainer_t
typedef Container_t::iterator Iter_t
typedef Container_t::const_iterator ConstIter_t
typedef std::list< ConstPtr_tList_t
typedef List_t::iterator ListIter_t
typedef List_t::const_iterator ConstListIter_t

Public Member Functions

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

Private Member Functions

bool isOutOfAperture (const TransversePoint &p) const

Private Attributes

std::string m_label
Side m_side
double m_frontFace
double m_rearFace
Point m_position
double m_xaperture
double m_xouter
double m_xinner

Detailed Description

Definition at line 22 of file ForwardTracker/ForwardTracker/Collimator.h.

Member Typedef Documentation

◆ ConstIter_t

typedef Container_t::const_iterator ForwardTracker::IBeamElement::ConstIter_t
inherited

Definition at line 42 of file ForwardTracker/ForwardTracker/IBeamElement.h.

◆ ConstListIter_t

typedef List_t::const_iterator ForwardTracker::IBeamElement::ConstListIter_t
inherited

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

◆ ConstPtr_t

typedef std::shared_ptr< const Collimator > ForwardTracker::Collimator::ConstPtr_t

Definition at line 39 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ Container_t

◆ Iter_t

typedef Container_t::iterator ForwardTracker::IBeamElement::Iter_t
inherited

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

◆ List_t

typedef std::list<ConstPtr_t> ForwardTracker::IBeamElement::List_t
inherited

Definition at line 43 of file ForwardTracker/ForwardTracker/IBeamElement.h.

◆ ListIter_t

typedef List_t::iterator ForwardTracker::IBeamElement::ListIter_t
inherited

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

Constructor & Destructor Documentation

◆ Collimator()

ForwardTracker::Collimator::Collimator ( double z,
double xaperture,
Side side )

Member Function Documentation

◆ clone()

IBeamElement::ConstPtr_t ForwardTracker::Collimator::clone ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 35 of file ForwardTracker/ForwardTracker/Collimator.h.

35{ IBeamElement::ConstPtr_t pbe(new Collimator(*this)); return pbe; }
std::shared_ptr< const IBeamElement > ConstPtr_t

◆ frontFace()

double ForwardTracker::Collimator::frontFace ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 30 of file ForwardTracker/ForwardTracker/Collimator.h.

30{ return m_frontFace; }

◆ isEndElement()

bool ForwardTracker::Collimator::isEndElement ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 33 of file ForwardTracker/ForwardTracker/Collimator.h.

33{ return false; }

◆ isOutOfAperture()

bool ForwardTracker::Collimator::isOutOfAperture ( const TransversePoint & p) const
inlineprivate

◆ label()

std::string ForwardTracker::Collimator::label ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 28 of file ForwardTracker/ForwardTracker/Collimator.h.

28{ return m_label; }

◆ position()

Point ForwardTracker::Collimator::position ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 32 of file ForwardTracker/ForwardTracker/Collimator.h.

32{ return m_position; }

◆ rearFace()

double ForwardTracker::Collimator::rearFace ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 31 of file ForwardTracker/ForwardTracker/Collimator.h.

31{ return m_rearFace; }

◆ side()

Side ForwardTracker::Collimator::side ( ) const
inlinevirtual

Implements ForwardTracker::IBeamElement.

Definition at line 29 of file ForwardTracker/ForwardTracker/Collimator.h.

29{ return m_side; }

◆ str()

std::string ForwardTracker::Collimator::str ( ) const
virtual

Implements ForwardTracker::IBeamElement.

Definition at line 33 of file ForwardTracker/src/Collimator.cxx.

33 {
34
35 std::stringstream ost;
36
37 ost << "m_label " << m_label << "\n"
38 << "m_side " << m_side << "\n"
39 << "m_frontFace " << m_frontFace << "\n"
40 << "m_rearFace " << m_rearFace << "\n"
41 << "m_postion " << m_position << "\n"
42 << "m_xaperture " << m_xaperture << "\n"
43 << "m_xouter " << m_xouter << "\n"
44 << "m_xinner " << m_xinner << "\n";
45
46 return ost.str();
47 }

◆ track()

void ForwardTracker::Collimator::track ( IParticle & particle) const
virtual

Implements ForwardTracker::IBeamElement.

Definition at line 24 of file ForwardTracker/src/Collimator.cxx.

24 {
25
26 particle.setBeamCoordinateShift(this);
27
28 if (particle.isOutOfAperture()) return;
29
30 if (this->isOutOfAperture(particle.transversePosition())) particle.setOutOfAperture(true);
31 }
bool isOutOfAperture(const TransversePoint &p) const
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses

Member Data Documentation

◆ m_frontFace

double ForwardTracker::Collimator::m_frontFace
private

Definition at line 48 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_label

std::string ForwardTracker::Collimator::m_label
private

Definition at line 46 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_position

Point ForwardTracker::Collimator::m_position
private

Definition at line 50 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_rearFace

double ForwardTracker::Collimator::m_rearFace
private

Definition at line 49 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_side

Side ForwardTracker::Collimator::m_side
private

Definition at line 47 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_xaperture

double ForwardTracker::Collimator::m_xaperture
private

Definition at line 51 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_xinner

double ForwardTracker::Collimator::m_xinner
private

Definition at line 53 of file ForwardTracker/ForwardTracker/Collimator.h.

◆ m_xouter

double ForwardTracker::Collimator::m_xouter
private

Definition at line 52 of file ForwardTracker/ForwardTracker/Collimator.h.


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