ATLAS Offline Software
Loading...
Searching...
No Matches
DCOnTrack.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef DCMATH_DCONTRACK_H
6#define DCMATH_DCONTRACK_H
7
8#include <ostream>
9
10#include "GaudiKernel/MsgStream.h"
12
13namespace TrkDriftCircleMath {
14
16 class DCOnTrack : public DriftCircle {
17 public:
26
32 DCOnTrack(const DriftCircle& dc, double res = 0., double err = 1e9) : DriftCircle{dc}, m_residual{res}, m_errorTrack{err} {}
33
35 void residual(double res) { m_residual = res; }
36
38 double residual() const { return m_residual; }
39
41 void errorTrack(double error) { m_errorTrack = error; }
42
44 double errorTrack() const { return m_errorTrack; }
45
47 void state(DCOnTrackState st) { m_state = st; }
48
50 DCOnTrackState state() const { return m_state; }
51
52 private:
53 double m_residual{0.};
54 double m_errorTrack{1.e9};
55 // cppcheck-suppress duplInheritedMember
56 DCOnTrackState m_state{OnTrack}; // Masks DriftCircle::m_state which is a DriftState
57 };
58
59 typedef std::vector<DCOnTrack> DCOnTrackVec;
60 typedef DCOnTrackVec::iterator DCOnTrackIt;
61 typedef DCOnTrackVec::const_iterator DCOnTrackCit;
62
63 std::ostream& operator<<(std::ostream& os, const TrkDriftCircleMath::DCOnTrack& dc);
64
65 MsgStream& operator<<(MsgStream& os, const TrkDriftCircleMath::DCOnTrack& dc);
66
67} // namespace TrkDriftCircleMath
68
69#endif
std::pair< std::vector< unsigned int >, bool > res
class representing a drift circle meaurement on segment
Definition DCOnTrack.h:16
DCOnTrack(const DriftCircle &dc, double res=0., double err=1e9)
minimal constructor
Definition DCOnTrack.h:32
double errorTrack() const
access track error
Definition DCOnTrack.h:44
void state(DCOnTrackState st)
set DCOnTrack state
Definition DCOnTrack.h:47
DCOnTrackState
enum to identify different DC states
Definition DCOnTrack.h:19
@ OutOfTime
delta electron
Definition DCOnTrack.h:22
@ OutsideRoad
inside road but too far to be on track
Definition DCOnTrack.h:24
@ CloseDC
too large drift time
Definition DCOnTrack.h:23
void residual(double res)
set residual
Definition DCOnTrack.h:35
DCOnTrackState state() const
access DCOnTrack state
Definition DCOnTrack.h:50
double residual() const
access residual
Definition DCOnTrack.h:38
void errorTrack(double error)
set track error
Definition DCOnTrack.h:41
DriftCircle(const LocVec2D &pos, double r, double dr, DriftState state, MdtId id, const Muon::MdtDriftCircleOnTrack *rot, unsigned int index=0)
full constructor
Definition DriftCircle.h:42
Function object to check whether two Segments are sub/super sets or different.
DCOnTrackVec::const_iterator DCOnTrackCit
Definition DCOnTrack.h:61
std::ostream & operator<<(std::ostream &os, const TrkDriftCircleMath::ClusterId &id)
Definition ClusterId.cxx:9
DCOnTrackVec::iterator DCOnTrackIt
Definition DCOnTrack.h:60
std::vector< DCOnTrack > DCOnTrackVec
Definition DCOnTrack.h:59