11 const std::string& inContainer,
13 const std::string& collName) :
24 if (!insert_itr.second) {
25 return insert_itr.first->second;
34 m_covX.push_back(cov[Acts::toUnderlying(CovIdx::phiCov)]);
35 m_covY.push_back(cov[Acts::toUnderlying(CovIdx::etaCov)]);
36 m_covT.push_back(cov[Acts::toUnderlying(CovIdx::timeCov)]);
48 m_techIdx.push_back(Acts::toUnderlying(techIdx));
52 case TechIndex::MDT: {
59 case TechIndex::RPC: {
69 case TechIndex::TGC: {
78 case TechIndex::STGC: {
97 return insert_itr.first->second;
108 if (!insert_itr.second) {
109 return insert_itr.first->second;
118 for (
const auto& spacePoint : bucket) {
119 spacePoints.push_back(
push_back(*spacePoint));
122 return insert_itr.first->second;
#define ATH_MSG_WARNING(x)
Handle class for reading from StoreGate.
bool msgLvl(const MSG::Level lvl) const
Test the output level.
int multilayer(const Identifier &id) const
Access to components of the ID.
int tube(const Identifier &id) const
static int tubeLayerMax()
int tubeLayer(const Identifier &id) const
int channel(const Identifier &id) const override
int gasGap(const Identifier &id) const override
get the hashes
int multilayer(const Identifier &id) const
const ChamberSet & chambers() const
Returns the associated chambers with this sector.
: The muon space point bucket represents a collection of points that will bre processed together in t...
const MuonGMR4::SpectrometerSector * msSector() const
returns th associated muonChamber
double coveredMin() const
lower interval value covered by the bucket
double coveredMax() const
upper interval value covered by the bucket
unsigned int bucketId() const
Returns the Identifier in the context of the MuonChamber.
The muon space point is the combination of two uncalibrated measurements one of them measures the eta...
bool measuresPhi() const
: Does the space point contain a phi measurement
double driftRadius() const
: Returns the size of the drift radius
bool measuresEta() const
: Does the space point contain an eta measurement
unsigned nEtaInstanceCounts() const
How many space points have been built in total with the same eta prd.
const xAOD::UncalibratedMeasurement * secondaryMeasurement() const
unsigned nPhiInstanceCounts() const
How many space points have been built in total with the same phi prd.
const Amg::Vector3D & localPosition() const
const Identifier & identify() const
: Identifier of the primary measurement
const Cov_t & covariance() const
Returns the covariance array.
VectorBranch< float > & m_driftR
Space point drift radius.
VectorBranch< float > & m_covT
VectorBranch< uint16_t > & m_bucketNumber
Space point bucket information.
VectorBranch< unsigned int > & m_nEtaInstances
How many other spacepoints were built with the same eta /phi prd.
ThreeVectorBranch m_spPos
Space point position.
VectorBranch< bool > & m_measEta
Does the space point measure phi or eta.
bool m_applyFilter
: Flag whether the module is operated in filter mode
MuonIdentifierBranch m_spacePointId
Station Identifier.
bool declare_keys() override final
VectorBranch< unsigned int > & m_nPhiInstances
SG::ReadHandleKey< MuonR4::SpacePointContainer > m_key
VectorBranch< float > & m_bucketMax
bool fill(const EventContext &ctx) override final
The fill method checks if enough information is provided such that the branch is cleared from the inf...
VectorBranch< float > & m_covX
Covariance of the space point.
VectorBranch< uint16_t > & m_channel
Measurement channel.
VectorBranch< unsigned char > & m_layer
Measurement layer.
unsigned int push_back(const MuonR4::SpacePointBucket &bucket)
std::unordered_map< const MuonR4::SpacePoint *, unsigned int > m_spacePointIdx
: Keep track when a spacepoint is filled into the tree
VectorBranch< unsigned char > & m_techIdx
Technology index of the space point.
VectorBranch< float > & m_bucketMin
Range of the space point bucket.
VectorBranch< int16_t > & m_phiChannel
Channel of the secondary measurment.
SpacePointTesterModule(MuonTesterTree &tree, const std::string &inContainer, MSG::Level msgLvl=MSG::Level::INFO, const std::string &collName="")
MuonIdentifierBranch m_bucketId
stationIndex / stationEta / stationPhi of the bucket chamber
MatrixBranch< uint16_t > & m_bucketPoints
associated space points
VectorBranch< bool > & m_measPhi
bool m_internalFill
: Flag toggling whether the module is in internal filling mode
VectorBranch< float > & m_covY
std::unordered_map< const MuonR4::SpacePointBucket *, unsigned int > m_bucketIdx
: Keep tarck when a space point bucket is filled into the tree
const Muon::IMuonIdHelperSvc * idHelperSvc() const
TesterModuleBase(MuonTesterTree &tree, const std::string &grp_name, MSG::Level msglvl=MSG::Level::INFO)
bool declare_dependency(Key &key)
Declares the ReadHandle/ ReadCondHandleKey as data dependency of the algorithm.
TTree * tree() override final
Returns the underlying TTree object.
virtual const MmIdHelper & mmIdHelper() const =0
access to CscIdHelper
virtual const RpcIdHelper & rpcIdHelper() const =0
access to RpcIdHelper
virtual const sTgcIdHelper & stgcIdHelper() const =0
access to TgcIdHelper
virtual const TgcIdHelper & tgcIdHelper() const =0
access to TgcIdHelper
virtual MuonStationIndex::TechnologyIndex technologyIndex(const Identifier &id) const =0
calculate layer index from Identifier
virtual const MdtIdHelper & mdtIdHelper() const =0
access to MdtIdHelper
int gasGap(const Identifier &id) const override
get the hashes
int channel(const Identifier &id) const override
int doubletR(const Identifier &id) const
int channel(const Identifier &id) const override
int gasGap(const Identifier &id) const override
get the hashes
int multilayer(const Identifier &id) const
int channel(const Identifier &id) const override
int gasGap(const Identifier &id) const override
get the hashes
std::string toString(const Parameters &pars)
Dumps the parameters into a string with labels in front of each number.
SpacePoint::CovIdx CovIdx
########################################## SpacePointMakerAlg #######################################...
DataVector< SpacePointBucket > SpacePointContainer
Abrivation of the space point container type.
Lightweight algorithm to read xAOD MDT sim hits and (fast-digitised) drift circles from SG and fill a...
TechnologyIndex
enum to classify the different layers in the muon spectrometer
const T * get(const ReadCondHandleKey< T > &key, const EventContext &ctx)
Convenience function to retrieve an object given a ReadCondHandleKey.
const Identifier & identify(const UncalibratedMeasurement *meas)
Returns the associated identifier from the muon measurement.