ATLAS Offline Software
IdentifierBranch.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef MUONTESTER_MUONIDENTIFIERBRANCH_H
5 #define MUONTESTER_MUONIDENTIFIERBRANCH_H
6 #ifndef XAOD_ANALYSIS
11 //
12 #include <string>
13 
14 
15 namespace MuonVal {
22 public:
23  MuonIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
24 
25  virtual void push_back(const Identifier& id);
26 
27  bool fill(const EventContext&) override final;
28  bool init() override final;
29 
30 protected:
31  const Muon::IMuonIdHelperSvc* idHelperSvc() const;
32 
33 private:
34  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{"Muon::MuonIdHelperSvc/MuonIdHelperSvc", name()};
36  VectorBranch<int8_t>& m_stationEta{parent().newVector<int8_t>(name() + "_stationEta")};
38 };
39 
42 public:
43  MdtIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
44 
45  void push_back(const Identifier& id) override final;
46 
47 private:
51 };
52 
54 public:
55  RpcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
56 
57  void push_back(const Identifier& id) override final;
58 
59 private:
65  VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
66 };
67 
70 public:
71  CscIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
72 
73  void push_back(const Identifier& id) override final;
74 
75 private:
78  VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
80 };
81 
84 public:
85  TgcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
86 
87  void push_back(const Identifier& id) override final;
88 
89 private:
91  VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
93 };
94 
97 public:
98  sTgcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
99 
100  void push_back(const Identifier& id) override final;
101 
102 private:
107 };
108 
111 public:
112  MmIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
113 
114  void push_back(const Identifier& id) override final;
115 
116 private:
120 };
121 }
122 #endif
123 #endif
MuonVal::sTgcIdentifierBranch::m_multiplet
VectorBranch< uint8_t > & m_multiplet
Definition: IdentifierBranch.h:104
MuonVal::TgcIdentifierBranch::TgcIdentifierBranch
TgcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:64
MuonVal::TgcIdentifierBranch
Branch to store all information of the TgcIdentifier.
Definition: IdentifierBranch.h:83
MuonVal::MdtIdentifierBranch
Branch to store all information of the MDT identifier.
Definition: IdentifierBranch.h:41
MuonVal::MuonIdentifierBranch::m_stationPhi
VectorBranch< uint8_t > & m_stationPhi
Definition: IdentifierBranch.h:37
MuonVal::MdtIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:24
MuonVal::MmIdentifierBranch::MmIdentifierBranch
MmIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:91
MuonVal::CscIdentifierBranch::m_wireLayer
VectorBranch< uint8_t > & m_wireLayer
Definition: IdentifierBranch.h:77
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:575
MuonVal::sTgcIdentifierBranch
Branch to store all information of the sTgcIdentifier.
Definition: IdentifierBranch.h:96
MuonVal::MmIdentifierBranch::m_channel
VectorBranch< uint16_t > & m_channel
Definition: IdentifierBranch.h:119
MuonVal::CscIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:52
MuonVal::MuonIdentifierBranch::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: IdentifierBranch.h:34
MuonVal::MmIdentifierBranch::m_gas_gap
VectorBranch< uint8_t > & m_gas_gap
Definition: IdentifierBranch.h:117
MuonVal::MuonTesterBranch
Definition: MuonTesterBranch.h:21
MuonVal::TgcIdentifierBranch::m_gasgap
VectorBranch< uint8_t > & m_gasgap
Definition: IdentifierBranch.h:90
MuonVal::sTgcIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:79
MuonVal::MdtIdentifierBranch::m_multiLayer
VectorBranch< uint8_t > & m_multiLayer
Definition: IdentifierBranch.h:48
MuonVal::RpcIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:36
MuonVal::MuonIdentifierBranch::fill
bool fill(const EventContext &) override final
The fill method checks if enough information is provided such that the branch is cleared from the inf...
Definition: IdentifierBranch.cxx:10
MuonVal::MmIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:93
MuonVal::VectorBranch< uint8_t >
MuonTesterTree.h
MuonVal::CscIdentifierBranch::CscIdentifierBranch
CscIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:50
MuonVal::MuonTesterBranch::tree
TTree * tree() override final
Returns the underlying TTree object.
Definition: MuonTesterBranch.cxx:53
VectorBranch.h
MuonVal::CscIdentifierBranch::m_chamberLayer
VectorBranch< uint8_t > & m_chamberLayer
Definition: IdentifierBranch.h:76
MuonVal::CscIdentifierBranch::m_strip
VectorBranch< uint8_t > & m_strip
Definition: IdentifierBranch.h:79
MuonVal::MuonIdentifierBranch::idHelperSvc
const Muon::IMuonIdHelperSvc * idHelperSvc() const
Definition: IdentifierBranch.cxx:12
MuonVal::TgcIdentifierBranch::push_back
void push_back(const Identifier &id) override final
Definition: IdentifierBranch.cxx:66
MuonVal::sTgcIdentifierBranch::m_channel_type
VectorBranch< uint8_t > & m_channel_type
Definition: IdentifierBranch.h:105
MuonVal::MmIdentifierBranch
Branch to store all information of the MmIdentifier.
Definition: IdentifierBranch.h:110
MuonVal::MuonTesterTree
Definition: MuonTesterTree.h:30
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
MuonVal::MuonIdentifierBranch::MuonIdentifierBranch
MuonIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:8
MuonVal::MdtIdentifierBranch::MdtIdentifierBranch
MdtIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:22
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
MuonVal::RpcIdentifierBranch
Definition: IdentifierBranch.h:53
MuonVal::RpcIdentifierBranch::m_doubletZ
VectorBranch< uint8_t > & m_doubletZ
Definition: IdentifierBranch.h:62
MuonVal::MuonIdentifierBranch::push_back
virtual void push_back(const Identifier &id)
Definition: IdentifierBranch.cxx:14
MuonVal::CscIdentifierBranch::m_measuresPhi
VectorBranch< bool > & m_measuresPhi
Definition: IdentifierBranch.h:78
MuonVal::MmIdentifierBranch::m_multiplet
VectorBranch< uint8_t > & m_multiplet
Definition: IdentifierBranch.h:118
MuonVal::MuonIdentifierBranch::init
bool init() override final
The init method checks whether the branch name has already registered to the MuonTree and tries then ...
Definition: IdentifierBranch.cxx:11
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
MuonVal::MuonTesterBranch::name
std::string name() const override final
Returns the name of the branch.
Definition: MuonTesterBranch.cxx:51
MuonVal
Class to store array like branches into the n-tuples.
Definition: MuonTPMetaDataAlg.cxx:25
MuonVal::RpcIdentifierBranch::RpcIdentifierBranch
RpcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:34
MuonVal::TgcIdentifierBranch::m_measuresPhi
VectorBranch< bool > & m_measuresPhi
Definition: IdentifierBranch.h:91
MuonVal::TgcIdentifierBranch::m_channel
VectorBranch< uint8_t > & m_channel
Definition: IdentifierBranch.h:92
MuonVal::MuonIdentifierBranch
Class to dump the basic properties of an Identifier into an n-tuple StationName -> BIS,...
Definition: IdentifierBranch.h:21
MuonTesterBranch.h
MuonVal::MuonTesterBranch::parent
MuonTesterTree & parent()
Returns the reference to the MuonTesterTree parent.
Definition: MuonTesterBranch.cxx:38
MuonVal::sTgcIdentifierBranch::m_gas_gap
VectorBranch< uint8_t > & m_gas_gap
Definition: IdentifierBranch.h:103
MuonVal::RpcIdentifierBranch::m_strip
VectorBranch< uint8_t > & m_strip
Definition: IdentifierBranch.h:64
MuonVal::RpcIdentifierBranch::m_gasGap
VectorBranch< uint8_t > & m_gasGap
Definition: IdentifierBranch.h:60
MuonVal::sTgcIdentifierBranch::m_channel
VectorBranch< uint16_t > & m_channel
Definition: IdentifierBranch.h:106
Muon::IMuonIdHelperSvc
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
Definition: IMuonIdHelperSvc.h:26
MuonVal::MdtIdentifierBranch::m_tubeLayer
VectorBranch< uint8_t > & m_tubeLayer
Definition: IdentifierBranch.h:49
MuonVal::MuonIdentifierBranch::m_stationIndex
VectorBranch< uint8_t > & m_stationIndex
Definition: IdentifierBranch.h:35
MuonVal::RpcIdentifierBranch::m_doubletPhi
VectorBranch< uint8_t > & m_doubletPhi
Definition: IdentifierBranch.h:63
MuonVal::RpcIdentifierBranch::m_measuresPhi
VectorBranch< bool > & m_measuresPhi
Definition: IdentifierBranch.h:65
MuonVal::CscIdentifierBranch
Branch to store all information of the CscIdentifier.
Definition: IdentifierBranch.h:69
MuonVal::RpcIdentifierBranch::m_doubletR
VectorBranch< uint8_t > & m_doubletR
Definition: IdentifierBranch.h:61
MuonVal::MdtIdentifierBranch::m_tube
VectorBranch< uint8_t > & m_tube
Definition: IdentifierBranch.h:50
MuonVal::MuonIdentifierBranch::m_stationEta
VectorBranch< int8_t > & m_stationEta
Definition: IdentifierBranch.h:36
IMuonIdHelperSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
MuonVal::sTgcIdentifierBranch::sTgcIdentifierBranch
sTgcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
Definition: IdentifierBranch.cxx:77