ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes | List of all members
HGTD_Cluster Class Referencefinal

#include <HGTD_Cluster.h>

Inheritance diagram for HGTD_Cluster:
Collaboration diagram for HGTD_Cluster:

Public Member Functions

 HGTD_Cluster ()
 
 HGTD_Cluster (const HGTD_Cluster &)=default
 
HGTD_Clusteroperator= (const HGTD_Cluster &)=default
 
 HGTD_Cluster (HGTD_Cluster &&)=default
 
HGTD_Clusteroperator= (HGTD_Cluster &&)=default
 
virtual ~HGTD_Cluster ()=default
 
 HGTD_Cluster (const Identifier &rdo_id, const Amg::Vector2D &loc_pos, std::vector< Identifier > &&rdo_list, const InDet::SiWidth &width, const InDetDD::SolidStateDetectorElementBase *det_el, Amg::MatrixX &&loc_err_matx, const float time_of_arrival, const float time_of_arrival_err, std::vector< int > &&time_over_threshold)
 
virtual const InDet::SiWidthwidth () const
 
virtual const Amg::Vector3DglobalPosition () const
 
virtual const InDetDD::SolidStateDetectorElementBasedetectorElement () const override
 return the detector element corresponding to this PRD The pointer will be zero if the det el is not defined (i.e. More...
 
virtual bool type (Trk::PrepRawDataType type) const override
 Interface method checking the type. More...
 
virtual float time () const
 
virtual float timeResolution () const
 
virtual const std::vector< int > & totList () const
 
Identifier identify () const
 return the identifier More...
 
const Amg::Vector2DlocalPosition () const
 return the local position reference More...
 
const std::vector< Identifier > & rdoList () const
 return the List of rdo identifiers (pointers) More...
 
const Amg::MatrixXlocalCovariance () const
 return const ref to the error matrix More...
 
bool hasLocalCovariance () const
 returns localCovariance().size()!=0 More...
 
virtual MsgStream & dump (MsgStream &stream) const
 dump information about the PRD object. More...
 
virtual std::ostream & dump (std::ostream &stream) const
 dump information about the PRD object. More...
 
void setHashAndIndex (unsigned short collHash, unsigned short objIndex)
 TEMP for testing: might make some classes friends later ... More...
 
const IdentContIndexgetHashAndIndex () const
 

Static Public Member Functions

static std::size_t numberOfInstantiations ()
 

Static Public Attributes

static std::atomic_size_t s_numberOfInstantiations
 

Private Attributes

InDet::SiWidth m_width
 
CxxUtils::CachedValue< Amg::Vector3Dm_glob_pos
 
const InDetDD::SolidStateDetectorElementBasem_det_el
 
float m_time {}
 
float m_time_resolution {}
 
std::vector< int > m_time_over_threshold
 
Identifier m_clusId { 0 }
 PrepRawData ID, not const because of DataPool. More...
 
Amg::Vector2D m_localPos {}
 see derived classes for definition of meaning of LocalPosition More...
 
std::vector< Identifierm_rdoList {}
 Stores the identifiers of the RDOs. More...
 
Amg::MatrixX m_localCovariance {}
 See derived classes for definition of ErrorMatrix. More...
 
IdentContIndex m_indexAndHash
 Stores its own position (index) in collection plus the hash id for the collection (needed for the EL to IDC) More...
 

Detailed Description

Definition at line 35 of file HGTD_Cluster.h.

Constructor & Destructor Documentation

◆ HGTD_Cluster() [1/4]

HGTD_Cluster::HGTD_Cluster ( )

Definition at line 33 of file HGTD_Cluster.cxx.

33  : PrepRawData() {
34  m_det_el = nullptr;
35 }

◆ HGTD_Cluster() [2/4]

HGTD_Cluster::HGTD_Cluster ( const HGTD_Cluster )
default

◆ HGTD_Cluster() [3/4]

HGTD_Cluster::HGTD_Cluster ( HGTD_Cluster &&  )
default

◆ ~HGTD_Cluster()

virtual HGTD_Cluster::~HGTD_Cluster ( )
virtualdefault

◆ HGTD_Cluster() [4/4]

HGTD_Cluster::HGTD_Cluster ( const Identifier rdo_id,
const Amg::Vector2D loc_pos,
std::vector< Identifier > &&  rdo_list,
const InDet::SiWidth width,
const InDetDD::SolidStateDetectorElementBase det_el,
Amg::MatrixX &&  loc_err_matx,
const float  time_of_arrival,
const float  time_of_arrival_err,
std::vector< int > &&  time_over_threshold 
)

Definition at line 16 of file HGTD_Cluster.cxx.

25  : PrepRawData(rdo_id, loc_pos, std::move(rdo_list), std::move(loc_err_matx)),
26  m_width(width),
27  m_det_el(det_el),
28  m_time(time_of_arrival),
29  m_time_resolution(time_of_arrival_err),
30  m_time_over_threshold(std::move(time_over_threshold)) {}

Member Function Documentation

◆ detectorElement()

const InDetDD::SolidStateDetectorElementBase * HGTD_Cluster::detectorElement ( ) const
inlineoverridevirtual

return the detector element corresponding to this PRD The pointer will be zero if the det el is not defined (i.e.

it was not passed in by the ctor)

Implements Trk::PrepRawData.

Definition at line 105 of file HGTD_Cluster.h.

105  {
106  return m_det_el;
107 }

◆ dump() [1/2]

MsgStream & Trk::PrepRawData::dump ( MsgStream &  stream) const
virtualinherited

dump information about the PRD object.

Reimplemented in InDet::PixelCluster, Muon::MMPrepData, Muon::CscPrepData, InDet::TRT_DriftCircle, Muon::CscStripPrepData, Muon::TgcPrepData, Muon::sTgcPrepData, InDet::SCT_Cluster, Muon::RpcPrepData, InDet::SiCluster, Muon::MdtPrepData, Muon::MuonCluster, Muon::MdtTwinPrepData, and Muon::RpcCoinData.

Definition at line 79 of file PrepRawData.cxx.

80 {
81  stream << "PrepRawData object" << endmsg;
82  stream << "Identifier = (" << this->identify().getString() << "), ";
83 
84  stream << "Local Position = (";
85  stream << Amg::toString(this->localPosition()) << "), ";
86 
87  stream << "Local Covariance = (";
88  if (this->m_localCovariance.size() != 0) {
89  stream << Amg::toString(this->localCovariance()) << "), ";
90  } else {
91  stream << "NULL!), ";
92  }
93 
94  stream << "RDO List = [";
95  std::vector<Identifier>::const_iterator rdoIt = this->rdoList().begin();
96  std::vector<Identifier>::const_iterator rdoItEnd = this->rdoList().end();
97  for (; rdoIt != rdoItEnd; ++rdoIt) {
98  stream << rdoIt->getString() << ", ";
99  }
100  stream << "], ";
101 
102  stream << "}" << endmsg;
103  return stream;
104 }

◆ dump() [2/2]

std::ostream & Trk::PrepRawData::dump ( std::ostream &  stream) const
virtualinherited

dump information about the PRD object.

I would like to make this pure virtual, but I don't want to risk screwing up the muon classes for the moment

Reimplemented in InDet::PixelCluster, Muon::MMPrepData, Muon::CscPrepData, InDet::TRT_DriftCircle, Muon::CscStripPrepData, Muon::TgcPrepData, Muon::sTgcPrepData, InDet::SCT_Cluster, Muon::RpcPrepData, InDet::SiCluster, Muon::MdtPrepData, Muon::MuonCluster, Muon::MdtTwinPrepData, and Muon::RpcCoinData.

Definition at line 107 of file PrepRawData.cxx.

108 {
109  stream << "PrepRawData object" << std::endl;
110  stream << "Identifier " << m_clusId << std::endl;
111  stream << "Local Position = (";
112 
113  stream << Amg::toString(this->localPosition()) << "), ";
114  stream << "Local Covariance = (";
115  if (this->m_localCovariance.size() != 0) {
116  stream << Amg::toString(this->localCovariance()) << "), ";
117  } else {
118  stream << "NULL!), ";
119  }
120  stream << "Collection Hash: " << m_indexAndHash.collHash()
121  << "\tIndex in collection: " << m_indexAndHash.objIndex() << std::endl;
122  stream << "RDO List = [";
123  for (auto it : m_rdoList) {
124  stream << it << std::endl;
125  }
126  stream << "], ";
127  return stream;
128 }

◆ getHashAndIndex()

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

◆ globalPosition()

const Amg::Vector3D & HGTD_Cluster::globalPosition ( ) const
inlinevirtual

Definition at line 94 of file HGTD_Cluster.h.

94  {
95  if (!m_det_el) {
97  }
98  if (!m_glob_pos.isValid()) {
99  m_glob_pos.set (m_det_el->surface(identify()).localToGlobal(localPosition()));
100  }
101  return *m_glob_pos.ptr();
102 }

◆ hasLocalCovariance()

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

◆ identify()

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

return the identifier

◆ 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

◆ numberOfInstantiations()

static 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  }

◆ operator=() [1/2]

HGTD_Cluster& HGTD_Cluster::operator= ( const HGTD_Cluster )
default

◆ operator=() [2/2]

HGTD_Cluster& HGTD_Cluster::operator= ( HGTD_Cluster &&  )
default

◆ rdoList()

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

return the List of rdo identifiers (pointers)

◆ setHashAndIndex()

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

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

◆ time()

float HGTD_Cluster::time ( ) const
inlinevirtual

Definition at line 115 of file HGTD_Cluster.h.

115 { return m_time; }

◆ timeResolution()

float HGTD_Cluster::timeResolution ( ) const
inlinevirtual

Definition at line 117 of file HGTD_Cluster.h.

117 { return m_time_resolution; }

◆ totList()

const std::vector< int > & HGTD_Cluster::totList ( ) const
inlinevirtual

Definition at line 119 of file HGTD_Cluster.h.

119  {
120  return m_time_over_threshold;
121 }

◆ type()

bool HGTD_Cluster::type ( Trk::PrepRawDataType  type) const
inlineoverridevirtual

Interface method checking the type.

Implements Trk::PrepRawData.

Definition at line 110 of file HGTD_Cluster.h.

111 {
113 }

◆ width()

const InDet::SiWidth & HGTD_Cluster::width ( ) const
inlinevirtual

Definition at line 92 of file HGTD_Cluster.h.

92 { return m_width; }

Member Data Documentation

◆ m_clusId

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

PrepRawData ID, not const because of DataPool.

Definition at line 151 of file PrepRawData.h.

◆ m_det_el

const InDetDD::SolidStateDetectorElementBase* HGTD_Cluster::m_det_el
private

Definition at line 82 of file HGTD_Cluster.h.

◆ m_glob_pos

CxxUtils::CachedValue<Amg::Vector3D> HGTD_Cluster::m_glob_pos
private

Definition at line 80 of file HGTD_Cluster.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 162 of file PrepRawData.h.

◆ m_localCovariance

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

See derived classes for definition of ErrorMatrix.

Definition at line 158 of file PrepRawData.h.

◆ m_localPos

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

see derived classes for definition of meaning of LocalPosition

Definition at line 154 of file PrepRawData.h.

◆ m_rdoList

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

Stores the identifiers of the RDOs.

Definition at line 156 of file PrepRawData.h.

◆ m_time

float HGTD_Cluster::m_time {}
private

Definition at line 84 of file HGTD_Cluster.h.

◆ m_time_over_threshold

std::vector<int> HGTD_Cluster::m_time_over_threshold
private

Definition at line 86 of file HGTD_Cluster.h.

◆ m_time_resolution

float HGTD_Cluster::m_time_resolution {}
private

Definition at line 85 of file HGTD_Cluster.h.

◆ m_width

InDet::SiWidth HGTD_Cluster::m_width
private

Definition at line 78 of file HGTD_Cluster.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:
CxxUtils::CachedValue::ptr
const T * ptr() const
Return a pointer to the cached value.
HGTD_Cluster::m_width
InDet::SiWidth m_width
Definition: HGTD_Cluster.h:78
CxxUtils::CachedValue::isValid
bool isValid() const
Test to see if the value is valid.
HGTD_Cluster::m_time_resolution
float m_time_resolution
Definition: HGTD_Cluster.h:85
Trk::PrepRawData::localCovariance
const Amg::MatrixX & localCovariance() const
return const ref to the error matrix
skel.it
it
Definition: skel.GENtoEVGEN.py:396
InDetDD::SolidStateDetectorElementBase::surface
Trk::Surface & surface()
Element Surface.
Trk::PrepRawData::m_localCovariance
Amg::MatrixX m_localCovariance
See derived classes for definition of ErrorMatrix.
Definition: PrepRawData.h:158
HGTD_Cluster::m_glob_pos
CxxUtils::CachedValue< Amg::Vector3D > m_glob_pos
Definition: HGTD_Cluster.h:80
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
HGTD_Cluster::width
virtual const InDet::SiWidth & width() const
Definition: HGTD_Cluster.h:92
Trk::PrepRawData::m_clusId
Identifier m_clusId
PrepRawData ID, not const because of DataPool.
Definition: PrepRawData.h:151
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
HGTD_Cluster::m_time
float m_time
Definition: HGTD_Cluster.h:84
Amg::toString
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
Definition: GeoPrimitivesToStringConverter.h:40
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
Trk::PrepRawData::m_rdoList
std::vector< Identifier > m_rdoList
Stores the identifiers of the RDOs.
Definition: PrepRawData.h:156
Trk::PrepRawData::PrepRawData
PrepRawData()
public because of DataPool
Definition: PrepRawData.cxx:68
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
IdentContIndex::objIndex
unsigned short objIndex() const
object index in collection
Definition: IdentContIndex.h:92
HGTD_Cluster::type
virtual bool type(Trk::PrepRawDataType type) const override
Interface method checking the type.
Definition: HGTD_Cluster.h:110
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
HGTD_Cluster::m_det_el
const InDetDD::SolidStateDetectorElementBase * m_det_el
Definition: HGTD_Cluster.h:82
CxxUtils::CachedValue::set
void set(const T &val) const
Set the value, assuming it is currently invalid.
Trk::PrepRawData::m_indexAndHash
IdentContIndex m_indexAndHash
Stores its own position (index) in collection plus the hash id for the collection (needed for the EL ...
Definition: PrepRawData.h:162
Identifier::getString
std::string getString() const
Provide a string form of the identifier - hexadecimal.
Definition: Identifier.cxx:25
Trk::ObjectCounter< Trk::PrepRawData >::s_numberOfInstantiations
static std::atomic_size_t s_numberOfInstantiations
Definition: TrkObjectCounter.h:22
HGTD_Cluster::m_time_over_threshold
std::vector< int > m_time_over_threshold
Definition: HGTD_Cluster.h:86
IdentContIndex::collHash
unsigned short collHash() const
Accessor to hash, obj index and combined index.
Definition: IdentContIndex.h:85
Trk::PrepRawDataType::HGTD_Cluster
@ HGTD_Cluster
Trk::PrepRawDataUndefinedVariable
class thrown in the event of an variable not being defined.
Definition: PrepRawData.h:59