ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | Private Attributes | List of all members
Muon::sTgcPrepData Class Referencefinal

Class to represent sTgc measurements. More...

#include <sTgcPrepData.h>

Inheritance diagram for Muon::sTgcPrepData:
Collaboration diagram for Muon::sTgcPrepData:

Public Types

enum  Author : uint8_t {
  Author::unKnown = 0, Author::RdoToPrdConverter, Author::TrigProcessor, Author::SimpleClusterBuilder,
  Author::Caruana
}
 
enum  Quality : uint8_t { Quality::unKnown = 0 }
 

Public Member Functions

 sTgcPrepData ()=default
 
 sTgcPrepData (const sTgcPrepData &)=delete
 
 sTgcPrepData (sTgcPrepData &&) noexcept=default
 
sTgcPrepDataoperator= (const sTgcPrepData &)=delete
 
sTgcPrepDataoperator= (sTgcPrepData &&) noexcept=default
 
 sTgcPrepData (const Identifier &RDOId, const IdentifierHash &idDE, Amg::Vector2D &&locpos, std::vector< Identifier > &&rdoList, Amg::MatrixX &&locErrMat, const MuonGM::sTgcReadoutElement *detEl, const int charge, const short int time, std::vector< uint16_t > &&stripNumbers, std::vector< short int > &&stripTimes, std::vector< int > &&stripCharges)
 Constructor. More...
 
 sTgcPrepData (const Identifier &RDOId, const IdentifierHash &idDE, Amg::Vector2D &&locpos, std::vector< Identifier > &&rdoList, Amg::MatrixX &&locErrMat, const MuonGM::sTgcReadoutElement *detEl, const int charge=0, const short int time=0)
 
virtual ~sTgcPrepData ()=default
 Destructor: More...
 
virtual const Amg::Vector3DglobalPosition () const override final
 Returns the global position. More...
 
virtual const MuonGM::sTgcReadoutElementdetectorElement () const override final
 Returns the detector element corresponding to this PRD. More...
 
virtual bool type (Trk::PrepRawDataType type) const override final
 Interface method checking the type. More...
 
virtual MsgStream & dump (MsgStream &stream) const override final
 Dumps information about the PRD. More...
 
virtual std::ostream & dump (std::ostream &stream) const override final
 Dumps information about the PRD. More...
 
int charge () const
 Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC. More...
 
short int time () const
 
const std::vector< uint16_t > & stripNumbers () const
 returns the list of strip numbers More...
 
const std::vector< short int > & stripTimes () const
 returns the list of times More...
 
const std::vector< int > & stripCharges () const
 returns the list of charges More...
 
Quality quality () const
 
void setQuality (const Quality q)
 
Author author () const
 
void setAuthor (const Author a)
 
virtual IdentifierHash collectionHash () const
 Returns the IdentifierHash corresponding to the PRD collection in the PRD container. More...
 
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...
 
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
 

Protected Attributes

CxxUtils::CachedUniquePtr< const Amg::Vector3Dm_globalPosition
 Global position of measurement. More...
 

Private Attributes

const MuonGM::sTgcReadoutElementm_detEl {nullptr}
 Cached pointer to the detector element - should never be zero. More...
 
int m_charge {0}
 
short int m_time {0}
 
std::vector< uint16_t > m_stripNumbers {}
 @list of strip numbers, time and charge, of the strips associated to the PRD More...
 
std::vector< short int > m_stripTimes {}
 strip times for the sTGCs will be available for the commissioning of the NSW. More...
 
std::vector< int > m_stripCharges {}
 
Quality m_quality {Quality::unKnown}
 
Author m_author {Author::unKnown}
 
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

Class to represent sTgc measurements.

Definition at line 20 of file sTgcPrepData.h.

Member Enumeration Documentation

◆ Author

enum Muon::sTgcPrepData::Author : uint8_t
strong
Enumerator
unKnown 
RdoToPrdConverter 
TrigProcessor 
SimpleClusterBuilder 
Caruana 

Definition at line 100 of file sTgcPrepData.h.

100  : uint8_t{
101  unKnown = 0,
102  RdoToPrdConverter,
103  TrigProcessor,
104  SimpleClusterBuilder,
105  Caruana
106  };

◆ Quality

enum Muon::sTgcPrepData::Quality : uint8_t
strong
Enumerator
unKnown 

Definition at line 108 of file sTgcPrepData.h.

108  : uint8_t{
109  unKnown = 0,
110  };

Constructor & Destructor Documentation

◆ sTgcPrepData() [1/5]

Muon::sTgcPrepData::sTgcPrepData ( )
default

◆ sTgcPrepData() [2/5]

Muon::sTgcPrepData::sTgcPrepData ( const sTgcPrepData )
delete

◆ sTgcPrepData() [3/5]

Muon::sTgcPrepData::sTgcPrepData ( sTgcPrepData &&  )
defaultnoexcept

◆ sTgcPrepData() [4/5]

Muon::sTgcPrepData::sTgcPrepData ( const Identifier RDOId,
const IdentifierHash idDE,
Amg::Vector2D &&  locpos,
std::vector< Identifier > &&  rdoList,
Amg::MatrixX &&  locErrMat,
const MuonGM::sTgcReadoutElement detEl,
const int  charge,
const short int  time,
std::vector< uint16_t > &&  stripNumbers,
std::vector< short int > &&  stripTimes,
std::vector< int > &&  stripCharges 
)

Constructor.

Parameters
RDOIdThe identifier of the central strip of the cluster
locposThe local coords of the measurement (this object will now own the LocalPostion)
rdoListVector of all the Identifiers of the strips used in this cluster
locErrMatThe error of the measurement (this object will now own the ErrorMatrix)
detElThe pointer to the Detector Element on which this measurement was made (must NOT be zero). Ownership is NOT taken (the pointer is assumed to belong to GeoModel and will not be deleted)
bcBitMapbitmap storing in which bunches the channel fired

Definition at line 10 of file sTgcPrepData.cxx.

21  : MuonCluster(RDOId, idDE, locpos, std::move(rdoList),std::move(locErrMat))
22  , m_detEl(detEl)
23  , m_charge(charge)
24  , m_time(time)
25  , m_stripNumbers(std::move(stripNumbers))
26  , m_stripTimes(std::move(stripTimes))
27  , m_stripCharges(std::move(stripCharges)) {}

◆ sTgcPrepData() [5/5]

Muon::sTgcPrepData::sTgcPrepData ( const Identifier RDOId,
const IdentifierHash idDE,
Amg::Vector2D &&  locpos,
std::vector< Identifier > &&  rdoList,
Amg::MatrixX &&  locErrMat,
const MuonGM::sTgcReadoutElement detEl,
const int  charge = 0,
const short int  time = 0 
)

Definition at line 29 of file sTgcPrepData.cxx.

37  : MuonCluster(RDOId, idDE, locpos, std::move(rdoList), std::move(locErrMat))
38  , m_detEl(detEl)
39  , m_charge(charge)
40  , m_time(time){}

◆ ~sTgcPrepData()

virtual Muon::sTgcPrepData::~sTgcPrepData ( )
virtualdefault

Destructor:

Member Function Documentation

◆ author()

Author Muon::sTgcPrepData::author ( ) const
inline

Definition at line 115 of file sTgcPrepData.h.

115 { return m_author; }

◆ charge()

int Muon::sTgcPrepData::charge ( ) const
inline

Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC.

Definition at line 154 of file sTgcPrepData.h.

154 { return m_charge; }

◆ collectionHash()

IdentifierHash MuonCluster::collectionHash ( ) const
inlinevirtualinherited

Returns the IdentifierHash corresponding to the PRD collection in the PRD container.

Definition at line 104 of file MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h.

105  {
106  return getHashAndIndex().collHash();
107  }

◆ detectorElement()

const MuonGM::sTgcReadoutElement * Muon::sTgcPrepData::detectorElement ( ) const
inlinefinaloverridevirtual

Returns 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 Muon::MuonCluster.

Definition at line 139 of file sTgcPrepData.h.

139  {
140  return m_detEl;
141  }

◆ dump() [1/2]

MsgStream & Muon::sTgcPrepData::dump ( MsgStream &  stream) const
finaloverridevirtual

Dumps information about the PRD.

Reimplemented from Muon::MuonCluster.

Definition at line 42 of file sTgcPrepData.cxx.

42  {
43  stream << MSG::INFO<<"sTgcPrepData {"<<std::endl;
45  stream<<"}"<<endmsg;
46  return stream;
47  }

◆ dump() [2/2]

std::ostream & Muon::sTgcPrepData::dump ( std::ostream &  stream) const
finaloverridevirtual

Dumps information about the PRD.

Reimplemented from Muon::MuonCluster.

Definition at line 49 of file sTgcPrepData.cxx.

49  {
50  stream << "sTgcPrepData {"<<std::endl;
52  stream<<"}"<<std::endl;
53  return stream;
54  }

◆ getHashAndIndex()

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

◆ globalPosition()

const Amg::Vector3D & Muon::sTgcPrepData::globalPosition ( ) const
inlinefinaloverridevirtual

Returns the global position.

Implements Muon::MuonCluster.

Definition at line 143 of file sTgcPrepData.h.

143  {
144  if (not m_globalPosition) {
145  m_globalPosition.set(std::make_unique<Amg::Vector3D>(
148  }
149 
151  return *m_globalPosition;
152  }

◆ 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]

sTgcPrepData& Muon::sTgcPrepData::operator= ( const sTgcPrepData )
delete

◆ operator=() [2/2]

sTgcPrepData& Muon::sTgcPrepData::operator= ( sTgcPrepData &&  )
defaultnoexcept

◆ quality()

Quality Muon::sTgcPrepData::quality ( ) const
inline

Definition at line 112 of file sTgcPrepData.h.

112 { return m_quality; }

◆ rdoList()

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

return the List of rdo identifiers (pointers)

◆ setAuthor()

void Muon::sTgcPrepData::setAuthor ( const Author  a)
inline

Definition at line 116 of file sTgcPrepData.h.

116 { m_author = a; }

◆ setHashAndIndex()

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

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

◆ setQuality()

void Muon::sTgcPrepData::setQuality ( const Quality  q)
inline

Definition at line 113 of file sTgcPrepData.h.

113 { m_quality = q; }

◆ stripCharges()

const std::vector< int > & Muon::sTgcPrepData::stripCharges ( ) const
inline

returns the list of charges

Definition at line 160 of file sTgcPrepData.h.

160 { return m_stripCharges; }

◆ stripNumbers()

const std::vector< uint16_t > & Muon::sTgcPrepData::stripNumbers ( ) const
inline

returns the list of strip numbers

Definition at line 158 of file sTgcPrepData.h.

158 { return m_stripNumbers; }

◆ stripTimes()

const std::vector< short int > & Muon::sTgcPrepData::stripTimes ( ) const
inline

returns the list of times

Definition at line 159 of file sTgcPrepData.h.

159 { return m_stripTimes; }

◆ time()

short int Muon::sTgcPrepData::time ( ) const
inline

Definition at line 156 of file sTgcPrepData.h.

156 { return m_time; }

◆ type()

virtual bool Muon::sTgcPrepData::type ( Trk::PrepRawDataType  type) const
inlinefinaloverridevirtual

Interface method checking the type.

Implements Muon::MuonCluster.

Definition at line 75 of file sTgcPrepData.h.

76  {
78  }

Member Data Documentation

◆ m_author

Author Muon::sTgcPrepData::m_author {Author::unKnown}
private

Definition at line 135 of file sTgcPrepData.h.

◆ m_charge

int Muon::sTgcPrepData::m_charge {0}
private

Definition at line 121 of file sTgcPrepData.h.

◆ 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_detEl

const MuonGM::sTgcReadoutElement* Muon::sTgcPrepData::m_detEl {nullptr}
private

Cached pointer to the detector element - should never be zero.

Definition at line 120 of file sTgcPrepData.h.

◆ m_globalPosition

CxxUtils::CachedUniquePtr<const Amg::Vector3D> Muon::MuonCluster::m_globalPosition
protectedinherited

Global position of measurement.

Calculated on demand and cached

Definition at line 96 of file MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.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_quality

Quality Muon::sTgcPrepData::m_quality {Quality::unKnown}
private

Definition at line 134 of file sTgcPrepData.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_stripCharges

std::vector<int> Muon::sTgcPrepData::m_stripCharges {}
private

Definition at line 132 of file sTgcPrepData.h.

◆ m_stripNumbers

std::vector<uint16_t> Muon::sTgcPrepData::m_stripNumbers {}
private

@list of strip numbers, time and charge, of the strips associated to the PRD

Definition at line 124 of file sTgcPrepData.h.

◆ m_stripTimes

std::vector<short int> Muon::sTgcPrepData::m_stripTimes {}
private

strip times for the sTGCs will be available for the commissioning of the NSW.

Later the tdo (time) will not be in the datastream due to high occupancy. Then this an empty vector which does not take much space Patrick Scholer 3.12.2019

Definition at line 131 of file sTgcPrepData.h.

◆ m_time

short int Muon::sTgcPrepData::m_time {0}
private

Definition at line 122 of file sTgcPrepData.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:
Muon::sTgcPrepData::m_detEl
const MuonGM::sTgcReadoutElement * m_detEl
Cached pointer to the detector element - should never be zero.
Definition: sTgcPrepData.h:120
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:575
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
MuonGM::MuonClusterReadoutElement::surface
virtual const Trk::PlaneSurface & surface() const override
access to chamber surface (phi orientation), uses the first gas gap
Definition: MuonClusterReadoutElement.h:123
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
Muon::sTgcPrepData::m_stripTimes
std::vector< short int > m_stripTimes
strip times for the sTGCs will be available for the commissioning of the NSW.
Definition: sTgcPrepData.h:131
Muon::sTgcPrepData::type
virtual bool type(Trk::PrepRawDataType type) const override final
Interface method checking the type.
Definition: sTgcPrepData.h:75
Muon::sTgcPrepData::stripNumbers
const std::vector< uint16_t > & stripNumbers() const
returns the list of strip numbers
Definition: sTgcPrepData.h:158
Muon::sTgcPrepData::stripCharges
const std::vector< int > & stripCharges() const
returns the list of charges
Definition: sTgcPrepData.h:160
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
Muon::sTgcPrepData::m_stripNumbers
std::vector< uint16_t > m_stripNumbers
@list of strip numbers, time and charge, of the strips associated to the PRD
Definition: sTgcPrepData.h:124
Muon::sTgcPrepData::time
short int time() const
Definition: sTgcPrepData.h:156
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
Trk::PrepRawDataType::sTgcPrepData
@ sTgcPrepData
Trk::PrepRawData::getHashAndIndex
const IdentContIndex & getHashAndIndex() const
Muon::sTgcPrepData::m_stripCharges
std::vector< int > m_stripCharges
Definition: sTgcPrepData.h:132
Muon::MuonCluster::MuonCluster
MuonCluster()
Default constructor.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/src/MuonCluster.cxx:50
Trk::ObjectCounter< Trk::PrepRawData >::s_numberOfInstantiations
static std::atomic_size_t s_numberOfInstantiations
Definition: TrkObjectCounter.h:22
a
TList * a
Definition: liststreamerinfos.cxx:10
Muon::sTgcPrepData::m_quality
Quality m_quality
Definition: sTgcPrepData.h:134
Muon::MuonCluster::m_globalPosition
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
Global position of measurement.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h:96
extractSporadic.q
list q
Definition: extractSporadic.py:98
Muon::sTgcPrepData::m_charge
int m_charge
Definition: sTgcPrepData.h:121
Muon::MuonCluster::dump
virtual MsgStream & dump(MsgStream &stream) const override
Dumps information about the PRD.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/src/MuonCluster.cxx:78
Muon::sTgcPrepData::m_author
Author m_author
Definition: sTgcPrepData.h:135
IdentContIndex::collHash
unsigned short collHash() const
Accessor to hash, obj index and combined index.
Definition: IdentContIndex.h:85
Trk::Surface::localToGlobal
virtual void localToGlobal(const Amg::Vector2D &locp, const Amg::Vector3D &mom, Amg::Vector3D &glob) const =0
Specified by each surface type: LocalToGlobal method without dynamic memory allocation.
Muon::sTgcPrepData::charge
int charge() const
Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC.
Definition: sTgcPrepData.h:154
Muon::sTgcPrepData::stripTimes
const std::vector< short int > & stripTimes() const
returns the list of times
Definition: sTgcPrepData.h:159
Trk::PrepRawDataUndefinedVariable
class thrown in the event of an variable not being defined.
Definition: PrepRawData.h:59
Muon::sTgcPrepData::m_time
short int m_time
Definition: sTgcPrepData.h:122