ATLAS Offline Software
Loading...
Searching...
No Matches
TrkDriftCircleMath::DriftCircle Class Reference

This class represents a drift time measurement. More...

#include <DriftCircle.h>

Inheritance diagram for TrkDriftCircleMath::DriftCircle:
Collaboration diagram for TrkDriftCircleMath::DriftCircle:

Public Types

enum  DriftState {
  EarlyHit = -1 , InTime = 0 , LateHit = 1 , EmptyTube = 2 ,
  NotCrossed = 3
}
 state of the drift circle More...

Public Member Functions

 DriftCircle (const LocVec2D &pos, double r, double dr, DriftState state, MdtId id, const Muon::MdtDriftCircleOnTrack *rot, unsigned int index=0)
 full constructor
 DriftCircle (const LocVec2D &pos, double r, double dr, double drPrecise, DriftState state, MdtId id, const Muon::MdtDriftCircleOnTrack *rot, unsigned int index=0)
 full constructor
virtual ~DriftCircle ()=default
 destructor
const LocVec2Dposition () const
 access to local position
const MdtIdid () const
 access to identifier
double x () const
 direct access to local x position
double y () const
 direct access to local y position
double r () const
 access to drift radius
double dr () const
 access to error drift radius
double drPrecise () const
 access to precise error drift radius
const DriftStatedriftState () const
 access to drift state
const Muon::MdtDriftCircleOnTrackrot () const
 access to the ROT
unsigned int index () const
void updateRadius (double r, double dr)
 set method to allow update from t0 refit

Private Attributes

LocVec2D m_pos {0., 0.}
double m_r {0.}
double m_dr {0.}
double m_drPrecise {0.}
DriftState m_state
MdtId m_id {}
const Muon::MdtDriftCircleOnTrackm_rot {nullptr}
unsigned int m_idx {0}

Detailed Description

This class represents a drift time measurement.

Definition at line 22 of file DriftCircle.h.

Member Enumeration Documentation

◆ DriftState

state of the drift circle

Enumerator
EarlyHit 
InTime 

drift time too small to be compatible with drift spectrum

LateHit 

drift time compatible with drift spectrum

EmptyTube 

drift time too large to be compatible with drift spectrum

NotCrossed 

channel without drift measurement

Definition at line 25 of file DriftCircle.h.

25 {
26 EarlyHit = -1,
27 InTime = 0,
28 LateHit = 1,
29 EmptyTube = 2,
30 NotCrossed = 3
31 };
@ EmptyTube
drift time too large to be compatible with drift spectrum
Definition DriftCircle.h:29
@ LateHit
drift time compatible with drift spectrum
Definition DriftCircle.h:28
@ InTime
drift time too small to be compatible with drift spectrum
Definition DriftCircle.h:27
@ NotCrossed
channel without drift measurement
Definition DriftCircle.h:30

Constructor & Destructor Documentation

◆ DriftCircle() [1/2]

TrkDriftCircleMath::DriftCircle::DriftCircle ( const LocVec2D & pos,
double r,
double dr,
DriftState state,
MdtId id,
const Muon::MdtDriftCircleOnTrack * rot,
unsigned int index = 0 )
inline

full constructor

Parameters
poslocal position of the hit
rdrift radius
drerror on drift radius
statestate of the DC
identifierof hit
indexof drift circle use to link it back to the original RIO_OnTrack

Definition at line 42 of file DriftCircle.h.

48 :
49 m_pos(pos), m_r(r), m_dr(dr), m_drPrecise(dr), m_state(state), m_id(id), m_rot(rot), m_idx{index} {}
unsigned int index() const
Definition DriftCircle.h:99
double r() const
access to drift radius
Definition DriftCircle.h:86
double dr() const
access to error drift radius
Definition DriftCircle.h:89
const Muon::MdtDriftCircleOnTrack * m_rot
const Muon::MdtDriftCircleOnTrack * rot() const
access to the ROT
Definition DriftCircle.h:97

◆ DriftCircle() [2/2]

TrkDriftCircleMath::DriftCircle::DriftCircle ( const LocVec2D & pos,
double r,
double dr,
double drPrecise,
DriftState state,
MdtId id,
const Muon::MdtDriftCircleOnTrack * rot,
unsigned int index = 0 )
inline

full constructor

Parameters
poslocal position of the hit
rdrift radius
drerror on drift radius
drPreciseerror on drift radius (precise)
statestate of the DC
identifierof hit
indexof drift circle use to link it back to the original RIO_OnTrack

Definition at line 59 of file DriftCircle.h.

66 :
67 m_pos(pos), m_r(r), m_dr(dr), m_drPrecise(drPrecise), m_state(state), m_id(id), m_rot(rot),
68 m_idx{index} {}
double drPrecise() const
access to precise error drift radius
Definition DriftCircle.h:92

◆ ~DriftCircle()

virtual TrkDriftCircleMath::DriftCircle::~DriftCircle ( )
virtualdefault

destructor

Member Function Documentation

◆ dr()

double TrkDriftCircleMath::DriftCircle::dr ( ) const
inline

access to error drift radius

Definition at line 89 of file DriftCircle.h.

89{ return m_dr; }

◆ driftState()

const DriftState & TrkDriftCircleMath::DriftCircle::driftState ( ) const
inline

access to drift state

Definition at line 95 of file DriftCircle.h.

95{ return m_state; }

◆ drPrecise()

double TrkDriftCircleMath::DriftCircle::drPrecise ( ) const
inline

access to precise error drift radius

Definition at line 92 of file DriftCircle.h.

92{ return m_drPrecise; }

◆ id()

const MdtId & TrkDriftCircleMath::DriftCircle::id ( ) const
inline

access to identifier

Definition at line 77 of file DriftCircle.h.

77{ return m_id; }

◆ index()

unsigned int TrkDriftCircleMath::DriftCircle::index ( ) const
inline

Definition at line 99 of file DriftCircle.h.

99{ return m_idx; }

◆ position()

const LocVec2D & TrkDriftCircleMath::DriftCircle::position ( ) const
inline

access to local position

Definition at line 74 of file DriftCircle.h.

74{ return m_pos; }

◆ r()

double TrkDriftCircleMath::DriftCircle::r ( ) const
inline

access to drift radius

Definition at line 86 of file DriftCircle.h.

86{ return m_r; }

◆ rot()

const Muon::MdtDriftCircleOnTrack * TrkDriftCircleMath::DriftCircle::rot ( ) const
inline

access to the ROT

Definition at line 97 of file DriftCircle.h.

97{ return m_rot; }

◆ updateRadius()

void TrkDriftCircleMath::DriftCircle::updateRadius ( double r,
double dr )
inline

set method to allow update from t0 refit

Definition at line 101 of file DriftCircle.h.

101 {
102 m_r = r;
103 m_dr = dr;
104 }

◆ x()

double TrkDriftCircleMath::DriftCircle::x ( ) const
inline

direct access to local x position

Definition at line 80 of file DriftCircle.h.

80{ return m_pos.x(); }

◆ y()

double TrkDriftCircleMath::DriftCircle::y ( ) const
inline

direct access to local y position

Definition at line 83 of file DriftCircle.h.

83{ return m_pos.y(); }

Member Data Documentation

◆ m_dr

double TrkDriftCircleMath::DriftCircle::m_dr {0.}
private

Definition at line 109 of file DriftCircle.h.

109{0.};

◆ m_drPrecise

double TrkDriftCircleMath::DriftCircle::m_drPrecise {0.}
private

Definition at line 110 of file DriftCircle.h.

110{0.};

◆ m_id

MdtId TrkDriftCircleMath::DriftCircle::m_id {}
private

Definition at line 112 of file DriftCircle.h.

112{};

◆ m_idx

unsigned int TrkDriftCircleMath::DriftCircle::m_idx {0}
private

Definition at line 114 of file DriftCircle.h.

114{0};

◆ m_pos

LocVec2D TrkDriftCircleMath::DriftCircle::m_pos {0., 0.}
private

Definition at line 107 of file DriftCircle.h.

107{0., 0.};

◆ m_r

double TrkDriftCircleMath::DriftCircle::m_r {0.}
private

Definition at line 108 of file DriftCircle.h.

108{0.};

◆ m_rot

const Muon::MdtDriftCircleOnTrack* TrkDriftCircleMath::DriftCircle::m_rot {nullptr}
private

Definition at line 113 of file DriftCircle.h.

113{nullptr};

◆ m_state

DriftState TrkDriftCircleMath::DriftCircle::m_state
private

Definition at line 111 of file DriftCircle.h.


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