ATLAS Offline Software
Loading...
Searching...
No Matches
RpcMeasurement_v1.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5// EDM include(s):
7// Local include(s):
11#include "GaudiKernel/ServiceHandle.h"
15
16namespace {
17 static const std::string preFixStr{"Rpc_"};
18}
19
20namespace xAOD {
21 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, float, time, setTime)
22 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, uint32_t, triggerInfo, setTriggerInfo)
23 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, uint8_t, ambiguityFlag, setAmbiguityFlag)
25 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, uint16_t, stripNumber, setStripNumber)
27 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, uint8_t, doubletPhi, setDoubletPhi)
28 IMPLEMENT_SETTER_GETTER(RpcMeasurement_v1, float, timeCovariance, setTimeCovariance)
29 IMPLEMENT_READOUTELEMENT(RpcMeasurement_v1, m_readoutEle, RpcReadoutElement)
30
41 if (!m_identifier.isValid()){
42 m_identifier.set(readoutElement()->measurementId(measurementHash()));
43 }
44 return (*m_identifier.ptr());
45 }
47 Amg::Vector3D lPos{Amg::Vector3D::Zero()};
48 if(numDimensions() == 1) {
49 lPos[measuresPhi()] = localPosition<1>()[0];
50 } else {
51 lPos.block<2,1>(0,0) = xAOD::toEigen(localPosition<2>());
52 }
53 return lPos;
54 }
55}
#define IMPLEMENT_READOUTELEMENT(CLASS_NAME, CACHED_VALUE, READOUT_ELEMENT_TYPE)
Macro to handle the readoutElement.
#define IMPLEMENT_SETTER_GETTER(DTYPE, GETTER, SETTER)
This is a "hash" representation of an Identifier.
static IdentifierHash createHash(const unsigned strip, const unsigned gasGap, const unsigned doubPhi, const bool measPhi)
Constructs an Identifier hash from the Identifier fields controlled by this readout element.
RpcMeasurement_v1: Class storing the geneic.
IdentifierHash layerHash() const
Returns the hash of the associated layer (Needed for surface retrieval)
const MuonGMR4::RpcReadoutElement * readoutElement() const
Retrieve the associated RpcReadoutElement.
uint16_t stripNumber() const
returns the associated strip number
uint8_t doubletPhi() const
doubletPhi identifier field of the measurement
RpcMeasurement_v1()=default
Default constructor.
IdentifierHash measurementHash() const
Returns the hash of the measurement channel.
Amg::Vector3D localMeasurementPos() const
Returns the local position of the measurement.
uint8_t gasGap() const
returns the associated gas gap
const Identifier & identify() const
: Returns the Athena identifier of the measurement It's constructed from the measurementHash which is...
virtual uint8_t measuresPhi() const =0
returns whether the hit measures the phi coordinate
CxxUtils::CachedValue< Identifier > m_identifier
ConstVectorMap< N > localPosition() const
Returns the local position of the measurement.
virtual unsigned int numDimensions() const =0
Returns the number of dimensions of the measurement.
double timeOverThreshold(unsigned int m_word)
Eigen::Matrix< double, 3, 1 > Vector3D
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setWord1 uint16_t
setEventNumber uint32_t