ATLAS Offline Software
Loading...
Searching...
No Matches
MMPRDVariables.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 MuonPRDTEST_MMPRDVARIABLES_H
6#define MuonPRDTEST_MMPRDVARIABLES_H
7
12
13
14namespace MuonPRDTest{
16 public:
22 const std::string& prd_container_name,
23 MSG::Level msglvl);
24
25 ~MMPRDVariables() = default;
26
27 bool fill(const EventContext& ctx) override final;
28
29 bool declare_keys() override final;
30
35 unsigned int push_back(const Muon::MMPrepData& prd);
36
38 void dumpAllHitsInChamber(const MuonGM::MMReadoutElement& detEle);
40 void enableSeededDump();
41 private:
42 unsigned int dump(const Muon::MMPrepData& prd);
43 SG::ReadHandleKey<Muon::MMPrepDataContainer> m_key{};
50 MatrixBranch<short unsigned>& m_NSWMM_PRD_stripNumbers{parent().newMatrix<short unsigned>("PRD_MM_stripNumbers")}; //numbers of strips associated to the PRD cluster
51 MatrixBranch<short int>& m_NSWMM_PRD_stripTimes{parent().newMatrix<short int>("PRD_MM_stripTimes")}; //times of strips associated to the PRD cluster
52 MatrixBranch<int>& m_NSWMM_PRD_stripCharges{parent().newMatrix<int>("PRD_MM_stripCharges")}; //times of strips associated to the PRD cluster
56
58 std::unordered_set<Identifier> m_filteredChamb{};
60 std::unordered_map<Identifier, unsigned int> m_filteredPRDs{};
62 bool m_applyFilter{false};
64 bool m_externalPush{false};
65
66
67 };
68};
69
70#endif // MuonPRDTEST_MMPRDVARIABLES_H
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...
MatrixBranch< short unsigned > & m_NSWMM_PRD_stripNumbers
VectorBranch< uint8_t > & m_NSWMM_PRD_quality
void enableSeededDump()
Dumps only hits which are marked by the dumpAllHitsInChamber method.
unsigned int push_back(const Muon::MMPrepData &prd)
Adds a prd to the output tree.
VectorBranch< float > & m_NSWMM_PRD_covMatrix_1_1
MmIdentifierBranch m_NSWMM_PRD_id
std::unordered_set< Identifier > m_filteredChamb
Set of chambers to be dumped.
VectorBranch< int > & m_NSWMM_PRD_nStrips
void dumpAllHitsInChamber(const MuonGM::MMReadoutElement &detEle)
Adds all hits in this particular chamber to the output n-tuple.
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_key
MatrixBranch< short int > & m_NSWMM_PRD_stripTimes
bool m_applyFilter
Apply a filter to dump the prds.
MMPRDVariables(MuonTesterTree &tree, const std::string &prd_container_name, MSG::Level msglvl)
Standard constructor taking the MuonTesterTree as parent The container name under which the MicroMega...
VectorBranch< short > & m_NSWMM_PRD_author
VectorBranch< int > & m_NSWMM_PRD_time
bool declare_keys() override final
ScalarBranch< unsigned int > & m_NSWMM_nPRD
TwoVectorBranch m_NSWMM_PRD_localPos
MatrixBranch< int > & m_NSWMM_PRD_stripCharges
bool m_externalPush
Flag telling whether an external prd has been pushed.
std::unordered_map< Identifier, unsigned int > m_filteredPRDs
Set of particular chambers to be dumped.
ThreeVectorBranch m_NSWMM_PRD_globalPos
PrdTesterModule(MuonTesterTree &tree, const std::string &grp_name, MSG::Level msglvl)
Branch to store all information of the MmIdentifier.
MuonTesterTree & parent()
Returns the reference to the MuonTesterTree parent.
TTree * tree() override final
Returns the underlying TTree object.
MatrixBranch< T > & newMatrix(const std::string &name)
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
ScalarBranch< T > & newScalar(const std::string &name)
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Forward declaration.
-event-from-file
#define private