ATLAS Offline Software
MdtDriftCircleVariables.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef PRDTESTERR4_MDTDRITFCIRCLEVARIABLES_H
6 #define PRDTESTERR4_MDTDRITFCIRCLEVARIABLES_H
10 
11 #include <unordered_map>
12 #include <unordered_set>
16 namespace MuonValR4{
17 
19  public:
21  const std::string& inContainer,
23  const std::string& collName="MdtPrd");
24 
25  bool declare_keys() override final;
26 
27 
28  bool fill(const EventContext& ctx) override final;
29 
34  unsigned int push_back(const xAOD::MdtDriftCircle& dc);
39  void dumpAllHitsInChamber(const Identifier& chamberId);
43  void enableSeededDump();
44  private:
45  void dump(const ActsGeometryContext& gctx,
46  const xAOD::MdtDriftCircle& dc);
47 
49 
50  std::string m_collName{};
63 
65  std::unordered_set<Identifier> m_filteredChamb{};
67  std::unordered_map<Identifier, unsigned int> m_idOutIdxMap{};
69  std::vector<const xAOD::MdtDriftCircle*> m_dumpedPRDS{};
71  bool m_applyFilter{false};
72  };
73 }
74 #endif
TesterModuleBase.h
MuonVal::MdtIdentifierBranch
Branch to store all information of the MDT identifier.
Definition: IdentifierBranch.h:41
MuonValR4::MdtDriftCircleVariables::m_collName
std::string m_collName
Definition: MdtDriftCircleVariables.h:50
MuonValR4::MdtDriftCircleVariables::m_applyFilter
bool m_applyFilter
Apply a filter to dump the prds.
Definition: MdtDriftCircleVariables.h:71
MuonValR4::MdtDriftCircleVariables::m_adcCounts
VectorBranch< uint16_t > & m_adcCounts
Adc counts of the measurement.
Definition: MdtDriftCircleVariables.h:62
MuonValR4::MdtDriftCircleVariables::declare_keys
bool declare_keys() override final
Definition: MdtDriftCircleVariables.cxx:17
MuonValR4::MdtDriftCircleVariables::m_id
MdtIdentifierBranch m_id
Identifier of the Mdt.
Definition: MdtDriftCircleVariables.h:52
MuonValR4::MdtDriftCircleVariables::fill
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...
Definition: MdtDriftCircleVariables.cxx:20
MuonVal::VectorBranch< float >
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
MuonVal::ThreeVectorBranch
Definition: ThreeVectorBranch.h:19
MuonVal::MuonTesterBranch::tree
TTree * tree() override final
Returns the underlying TTree object.
Definition: MuonTesterBranch.cxx:53
MuonValR4::MdtDriftCircleVariables::m_driftRadiusUncert
VectorBranch< float > & m_driftRadiusUncert
Uncertainty on the drift radius measurement.
Definition: MdtDriftCircleVariables.h:58
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
AthMessaging::msgLvl
bool msgLvl(const MSG::Level lvl) const
Test the output level.
Definition: AthMessaging.h:151
MuonVal::MuonTesterTree
Definition: MuonTesterTree.h:30
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:93
IdentifierBranch.h
MuonValR4::MdtDriftCircleVariables::m_driftRadius
VectorBranch< float > & m_driftRadius
Dirft radius of the associated drit circle.
Definition: MdtDriftCircleVariables.h:56
MuonValR4::MdtDriftCircleVariables::m_filteredChamb
std::unordered_set< Identifier > m_filteredChamb
Set of chambers to be dumped.
Definition: MdtDriftCircleVariables.h:65
MuonValR4::MdtDriftCircleVariables::dump
void dump(const ActsGeometryContext &gctx, const xAOD::MdtDriftCircle &dc)
Definition: MdtDriftCircleVariables.cxx:67
MuonValR4::MdtDriftCircleVariables::dumpAllHitsInChamber
void dumpAllHitsInChamber(const Identifier &chamberId)
All hits from this particular chamber identifier are dumped to the output including the ones from the...
Definition: MdtDriftCircleVariables.cxx:52
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
MuonValR4::MdtDriftCircleVariables::m_idOutIdxMap
std::unordered_map< Identifier, unsigned int > m_idOutIdxMap
Map of Identifiers to the position index inside the vector.
Definition: MdtDriftCircleVariables.h:67
ActsGeometryContext
Include the GeoPrimitives which need to be put first.
Definition: ActsGeometryContext.h:27
MuonValR4::TesterModuleBase
Definition: TesterModuleBase.h:15
MuonValR4
Lightweight algorithm to read xAOD MDT sim hits and (fast-digitised) drift circles from SG and fill a...
Definition: IPatternVisualizationTool.h:23
MdtDriftCircleContainer.h
MuonValR4::MdtDriftCircleVariables::push_back
unsigned int push_back(const xAOD::MdtDriftCircle &dc)
Push back the drift circle measurement to the output.
Definition: MdtDriftCircleVariables.cxx:56
MuonValR4::MdtDriftCircleVariables::enableSeededDump
void enableSeededDump()
Activates the seeded dump of the branch.
Definition: MdtDriftCircleVariables.cxx:49
MuonValR4::MdtDriftCircleVariables::m_dumpedPRDS
std::vector< const xAOD::MdtDriftCircle * > m_dumpedPRDS
Vector of PRDs parsed via the external mechanism. These measurements are parsed first.
Definition: MdtDriftCircleVariables.h:69
MuonValR4::MdtDriftCircleVariables::m_globPos
ThreeVectorBranch m_globPos
Position of the Mdt drift circle in the global frame.
Definition: MdtDriftCircleVariables.h:54
MuonVal::MuonTesterBranch::parent
MuonTesterTree & parent()
Returns the reference to the MuonTesterTree parent.
Definition: MuonTesterBranch.cxx:38
python.Constants.INFO
int INFO
Definition: Control/AthenaCommon/python/Constants.py:16
MuonValR4::MdtDriftCircleVariables::MdtDriftCircleVariables
MdtDriftCircleVariables(MuonTesterTree &tree, const std::string &inContainer, MSG::Level msgLvl=MSG::Level::INFO, const std::string &collName="MdtPrd")
Definition: MdtDriftCircleVariables.cxx:9
xAOD::MdtDriftCircle_v1
https://gitlab.cern.ch/atlas/athena/-/blob/master/MuonSpectrometer/MuonReconstruction/MuonRecEvent/Mu...
Definition: MdtDriftCircle_v1.h:21
MuonValR4::MdtDriftCircleVariables::m_tdcCounts
VectorBranch< uint16_t > & m_tdcCounts
tdc counts of the measurement
Definition: MdtDriftCircleVariables.h:60
MuonValR4::MdtDriftCircleVariables
Definition: MdtDriftCircleVariables.h:18
MuonValR4::MdtDriftCircleVariables::m_key
SG::ReadHandleKey< xAOD::MdtDriftCircleContainer > m_key
Definition: MdtDriftCircleVariables.h:48
Identifier
Definition: IdentifierFieldParser.cxx:14