ATLAS Offline Software
Loading...
Searching...
No Matches
InDet::TRT_DriftCircle Class Referencefinal

#include <TRT_DriftCircle.h>

Inheritance diagram for InDet::TRT_DriftCircle:
Collaboration diagram for InDet::TRT_DriftCircle:

Public Types

using Island = TRT_LoLumRawData::Island

Public Member Functions

 TRT_DriftCircle ()
 TRT_DriftCircle (const TRT_DriftCircle &)=default
TRT_DriftCircleoperator= (const TRT_DriftCircle &)=default
TRT_DriftCircleoperator= (TRT_DriftCircle &&)=default
virtual ~TRT_DriftCircle ()=default
 TRT_DriftCircle (const Identifier &Id, const Amg::Vector2D &driftRadius, std::vector< Identifier > &&rdoList, Amg::MatrixX &&errDriftRadius, const InDetDD::TRT_BaseElement *detEl, const unsigned int word=0)
 Constructor with parameters: compact id of the DriftCircle, the driftRadius and its error the RDO dataword with additional validity bit The TRT_BaseElement ptr is not owned.
 TRT_DriftCircle (const Identifier &clusId, const Amg::Vector2D &driftRadius, Amg::MatrixX &&errDriftRadius, const InDetDD::TRT_BaseElement *detEl, const unsigned int word=0)
unsigned int getWord () const
 returns the TRT dataword
int driftTimeBin () const
 returns the leading edge bin defined as in TRT_LoLumRawData to be the first 0-1 transition
int trailingEdge () const
 returns the trailing edge bin
bool highLevel () const
 returns true if the high level threshold was passed
bool firstBinHigh () const
 returns true if the first bin is high
bool lastBinHigh () const
 returns true if the last bin is high
double timeOverThreshold () const
 returns Time over threshold in ns
int numberOfHighsBetweenEdges () const
 returns number of high bins between LE and TE (these included)
int numberOfLowsBetweenEdges () const
 returns number of low bins between LE and TE (these included)
double rawDriftTime () const
 returns the raw driftTime
double driftTime (bool &valid) const
 returns the raw driftTime, the passed boolean indicates if the drift time is valid or not.
bool driftTimeValid () const
 return true if the corrected drift time is OK
virtual const InDetDD::TRT_BaseElementdetectorElement () const override final
 return the detector element corresponding to this PRD
virtual Trk::PrepRawDataType prdType () const override final
 Interface method checking the type.
void setDriftTimeValid (bool valid)
 set driftTimeValid flag
bool isNoise () const
 returns true if the hit is caused by noise with a high probability.
virtual MsgStream & dump (MsgStream &stream) const override final
 dump information about the PRD object.
virtual std::ostream & dump (std::ostream &stream) const override final
 dump information about the PRD object.
Identifier identify () const
 return the identifier
const Amg::Vector2DlocalPosition () const
 return the local position reference
const std::vector< Identifier > & rdoList () const
 return the List of rdo identifiers (pointers)
const Amg::MatrixXlocalCovariance () const
 return const ref to the error matrix
bool hasLocalCovariance () const
 returns localCovariance().size()!=0
virtual bool type (PrepRawDataType type) const
 Interface method checking the type.
void setHashAndIndex (unsigned short collHash, unsigned short objIndex)
 TEMP for testing: might make some classes friends later ...
const IdentContIndexgetHashAndIndex () const

Static Public Member Functions

static std::size_t numberOfInstantiations ()

Static Public Attributes

static std::atomic_size_t s_numberOfInstantiations

Private Attributes

const InDetDD::TRT_BaseElementm_detEl
unsigned int m_word
CxxUtils::CachedValue< Islandm_island {}
Identifier m_clusId { 0 }
 PrepRawData ID, not const because of DataPool.
Amg::Vector2D m_localPos {}
 see derived classes for definition of meaning of LocalPosition
std::vector< Identifierm_rdoList {}
 Stores the identifiers of the RDOs.
Amg::MatrixX m_localCovariance {}
 See derived classes for definition of ErrorMatrix.
IdentContIndex m_indexAndHash
 Stores its own position (index) in collection plus the hash id for the collection (needed for the EL to IDC)

Friends

class ::TRT_DriftCircleContainerCnv
class TRT_DriftCircleContainerCnv_p1
class ::TRT_DriftCircleContainerCnv_p0

Detailed Description

Definition at line 31 of file TRT_DriftCircle.h.

Member Typedef Documentation

◆ Island

Constructor & Destructor Documentation

◆ TRT_DriftCircle() [1/4]

InDet::TRT_DriftCircle::TRT_DriftCircle ( )

Definition at line 48 of file TRT_DriftCircle.cxx.

49 : PrepRawData()
50 , m_detEl(nullptr)
51 , m_word(0)
52
53{
54}
const InDetDD::TRT_BaseElement * m_detEl
PrepRawData()
public because of DataPool

◆ TRT_DriftCircle() [2/4]

InDet::TRT_DriftCircle::TRT_DriftCircle ( const TRT_DriftCircle & )
default

◆ ~TRT_DriftCircle()

virtual InDet::TRT_DriftCircle::~TRT_DriftCircle ( )
virtualdefault

◆ TRT_DriftCircle() [3/4]

InDet::TRT_DriftCircle::TRT_DriftCircle ( const Identifier & Id,
const Amg::Vector2D & driftRadius,
std::vector< Identifier > && rdoList,
Amg::MatrixX && errDriftRadius,
const InDetDD::TRT_BaseElement * detEl,
const unsigned int word = 0 )

Constructor with parameters: compact id of the DriftCircle, the driftRadius and its error the RDO dataword with additional validity bit The TRT_BaseElement ptr is not owned.

Definition at line 22 of file TRT_DriftCircle.cxx.

29 : PrepRawData(Id, driftRadius, std::move(rdoList), std::move(errDriftRadius))
30 , m_detEl(detEl)
31 , m_word(word)
32{
33}
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)

◆ TRT_DriftCircle() [4/4]

InDet::TRT_DriftCircle::TRT_DriftCircle ( const Identifier & clusId,
const Amg::Vector2D & driftRadius,
Amg::MatrixX && errDriftRadius,
const InDetDD::TRT_BaseElement * detEl,
const unsigned int word = 0 )

Definition at line 35 of file TRT_DriftCircle.cxx.

41 : PrepRawData(Id, driftRadius, std::move(errDriftRadius))
42 , m_detEl(detEl)
43 , m_word(word)
44{
45}

Member Function Documentation

◆ detectorElement()

virtual const InDetDD::TRT_BaseElement * InDet::TRT_DriftCircle::detectorElement ( ) const
finaloverridevirtual

return the detector element corresponding to this PRD

Implements Trk::PrepRawData.

◆ driftTime()

double InDet::TRT_DriftCircle::driftTime ( bool & valid) const

returns the raw driftTime, the passed boolean indicates if the drift time is valid or not.

depreciated for 13.0.20 and later

◆ driftTimeBin()

int InDet::TRT_DriftCircle::driftTimeBin ( ) const

returns the leading edge bin defined as in TRT_LoLumRawData to be the first 0-1 transition

◆ driftTimeValid()

bool InDet::TRT_DriftCircle::driftTimeValid ( ) const

return true if the corrected drift time is OK

◆ dump() [1/2]

MsgStream & InDet::TRT_DriftCircle::dump ( MsgStream & stream) const
finaloverridevirtual

dump information about the PRD object.

Reimplemented from Trk::PrepRawData.

Definition at line 57 of file TRT_DriftCircle.cxx.

58{
59 std::ostringstream out;
60 dump(out);
61 stream<<out.str();
62 return stream;
63}
virtual MsgStream & dump(MsgStream &stream) const override final
dump information about the PRD object.

◆ dump() [2/2]

std::ostream & InDet::TRT_DriftCircle::dump ( std::ostream & stream) const
finaloverridevirtual

dump information about the PRD object.

Reimplemented from Trk::PrepRawData.

Definition at line 66 of file TRT_DriftCircle.cxx.

67{
68 stream << "TRT_DriftCircle object" << std::endl;
69 stream << "Level (true/false) " << highLevel() << std::endl;
70 stream << "Valid (true/false) " << driftTimeValid() << std::endl;
71 stream << "timeOverThreshold: " << timeOverThreshold()
72 << std::endl;
73 stream << "driftTime: " << rawDriftTime() << std::endl;
74 stream << "dataWord: " << m_word << std::endl;
75
76 stream << "Base class (PrepRawData):" << std::endl;
77 this->PrepRawData::dump(stream);
78
79 return stream;
80}
bool driftTimeValid() const
return true if the corrected drift time is OK
bool highLevel() const
returns true if the high level threshold was passed
double rawDriftTime() const
returns the raw driftTime
double timeOverThreshold() const
returns Time over threshold in ns

◆ firstBinHigh()

bool InDet::TRT_DriftCircle::firstBinHigh ( ) const

returns true if the first bin is high

◆ getHashAndIndex()

const IdentContIndex & Trk::PrepRawData::getHashAndIndex ( ) const
inherited

◆ getWord()

unsigned int InDet::TRT_DriftCircle::getWord ( ) const

returns the TRT dataword

◆ hasLocalCovariance()

bool Trk::PrepRawData::hasLocalCovariance ( ) const
inherited

returns localCovariance().size()!=0

◆ highLevel()

bool InDet::TRT_DriftCircle::highLevel ( ) const

returns true if the high level threshold was passed

◆ identify()

Identifier Trk::PrepRawData::identify ( ) const
inherited

return the identifier

◆ isNoise()

bool InDet::TRT_DriftCircle::isNoise ( ) const

returns true if the hit is caused by noise with a high probability.

This is a temporary feature. To be replaced by a tool that can be configured for different gas speeds etc

◆ lastBinHigh()

bool InDet::TRT_DriftCircle::lastBinHigh ( ) const

returns true if the last bin is high

◆ localCovariance()

const Amg::MatrixX & Trk::PrepRawData::localCovariance ( ) const
inherited

return const ref to the error matrix

◆ localPosition()

const Amg::Vector2D & Trk::PrepRawData::localPosition ( ) const
inherited

return the local position reference

◆ numberOfHighsBetweenEdges()

int InDet::TRT_DriftCircle::numberOfHighsBetweenEdges ( ) const

returns number of high bins between LE and TE (these included)

◆ numberOfInstantiations()

std::size_t Trk::ObjectCounter< Trk::PrepRawData >::numberOfInstantiations ( )
inlinestaticinherited

Definition at line 25 of file TrkObjectCounter.h.

26 {
27#ifndef NDEBUG
28 return s_numberOfInstantiations.load();
29#endif
30 return 0;
31 }
Helper to enable counting number of instantiations in debug builds.

◆ numberOfLowsBetweenEdges()

int InDet::TRT_DriftCircle::numberOfLowsBetweenEdges ( ) const

returns number of low bins between LE and TE (these included)

◆ operator=() [1/2]

TRT_DriftCircle & InDet::TRT_DriftCircle::operator= ( const TRT_DriftCircle & )
default

◆ operator=() [2/2]

TRT_DriftCircle & InDet::TRT_DriftCircle::operator= ( TRT_DriftCircle && )
default

◆ prdType()

virtual Trk::PrepRawDataType InDet::TRT_DriftCircle::prdType ( ) const
finaloverridevirtual

Interface method checking the type.

Implements Trk::PrepRawData.

◆ rawDriftTime()

double InDet::TRT_DriftCircle::rawDriftTime ( ) const

returns the raw driftTime

◆ rdoList()

const std::vector< Identifier > & Trk::PrepRawData::rdoList ( ) const
inherited

return the List of rdo identifiers (pointers)

◆ setDriftTimeValid()

void InDet::TRT_DriftCircle::setDriftTimeValid ( bool valid)

set driftTimeValid flag

◆ setHashAndIndex()

void Trk::PrepRawData::setHashAndIndex ( unsigned short collHash,
unsigned short objIndex )
inherited

TEMP for testing: might make some classes friends later ...

◆ timeOverThreshold()

double InDet::TRT_DriftCircle::timeOverThreshold ( ) const

returns Time over threshold in ns

◆ trailingEdge()

int InDet::TRT_DriftCircle::trailingEdge ( ) const

returns the trailing edge bin

◆ type()

virtual bool Trk::PrepRawData::type ( PrepRawDataType type) const
inlinevirtualinherited

Interface method checking the type.

Reimplemented in InDet::PixelCluster, and InDet::SCT_Cluster.

Definition at line 133 of file PrepRawData.h.

133 {
134 return prdType() == type;
135 }
virtual bool type(PrepRawDataType type) const
Interface method checking the type.
virtual PrepRawDataType prdType() const =0
Interface method returning the prdType.

◆ ::TRT_DriftCircleContainerCnv

friend class ::TRT_DriftCircleContainerCnv
friend

Definition at line 33 of file TRT_DriftCircle.h.

◆ ::TRT_DriftCircleContainerCnv_p0

friend class ::TRT_DriftCircleContainerCnv_p0
friend

Definition at line 35 of file TRT_DriftCircle.h.

◆ TRT_DriftCircleContainerCnv_p1

friend class TRT_DriftCircleContainerCnv_p1
friend

Definition at line 34 of file TRT_DriftCircle.h.

Member Data Documentation

◆ m_clusId

Identifier Trk::PrepRawData::m_clusId { 0 }
privateinherited

PrepRawData ID, not const because of DataPool.

Definition at line 156 of file PrepRawData.h.

156{ 0 };

◆ m_detEl

const InDetDD::TRT_BaseElement* InDet::TRT_DriftCircle::m_detEl
private

Definition at line 133 of file TRT_DriftCircle.h.

◆ m_indexAndHash

IdentContIndex Trk::PrepRawData::m_indexAndHash
privateinherited

Stores its own position (index) in collection plus the hash id for the collection (needed for the EL to IDC)

Definition at line 167 of file PrepRawData.h.

◆ m_island

CxxUtils::CachedValue<Island> InDet::TRT_DriftCircle::m_island {}
private

Definition at line 135 of file TRT_DriftCircle.h.

135{};

◆ m_localCovariance

Amg::MatrixX Trk::PrepRawData::m_localCovariance {}
privateinherited

See derived classes for definition of ErrorMatrix.

Definition at line 163 of file PrepRawData.h.

163{};

◆ m_localPos

Amg::Vector2D Trk::PrepRawData::m_localPos {}
privateinherited

see derived classes for definition of meaning of LocalPosition

Definition at line 159 of file PrepRawData.h.

159{};

◆ m_rdoList

std::vector<Identifier> Trk::PrepRawData::m_rdoList {}
privateinherited

Stores the identifiers of the RDOs.

Definition at line 161 of file PrepRawData.h.

161{};

◆ m_word

unsigned int InDet::TRT_DriftCircle::m_word
private

Definition at line 134 of file TRT_DriftCircle.h.

◆ s_numberOfInstantiations

std::atomic_size_t Trk::ObjectCounter< Trk::PrepRawData >::s_numberOfInstantiations
inlinestaticinherited

Definition at line 22 of file TrkObjectCounter.h.


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