ATLAS Offline Software
Loading...
Searching...
No Matches
IdentifierBranch.h
Go to the documentation of this file.
1/*
2Copyright (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
15namespace MuonVal {
22public:
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
30protected:
32
33private:
34 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{"Muon::MuonIdHelperSvc/MuonIdHelperSvc", name()};
35 VectorBranch<uint8_t>& m_stationIndex{parent().newVector<uint8_t>(name() + "_stationIndex")};
36 VectorBranch<int8_t>& m_stationEta{parent().newVector<int8_t>(name() + "_stationEta")};
37 VectorBranch<uint8_t>& m_stationPhi{parent().newVector<uint8_t>(name() + "_stationPhi")};
38};
39
42public:
43 MdtIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
44
45 void push_back(const Identifier& id) override final;
46
47private:
48 VectorBranch<uint8_t>& m_multiLayer{parent().newVector<uint8_t>(name() + "_multiLayer")};
49 VectorBranch<uint8_t>& m_tubeLayer{parent().newVector<uint8_t>(name() + "_tubeLayer")};
51};
52
54public:
55 RpcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
56
57 void push_back(const Identifier& id) override final;
58
59private:
60 VectorBranch<uint8_t>& m_gasGap{parent().newVector<uint8_t>(name() + "_gasGap")};
61 VectorBranch<uint8_t>& m_doubletR{parent().newVector<uint8_t>(name() + "_doubletR")};
62 VectorBranch<uint8_t>& m_doubletZ{parent().newVector<uint8_t>(name() + "_doubletZ")};
63 VectorBranch<uint8_t>& m_doubletPhi{parent().newVector<uint8_t>(name() + "_doubletPhi")};
65 VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
66};
67
70public:
71 CscIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
72
73 void push_back(const Identifier& id) override final;
74
75private:
76 VectorBranch<uint8_t>& m_chamberLayer{parent().newVector<uint8_t>(name() + "_chamberLayer")};
77 VectorBranch<uint8_t>& m_wireLayer{parent().newVector<uint8_t>(name() + "_wireLayer")};
78 VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
80};
81
84public:
85 TgcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
86
87 void push_back(const Identifier& id) override final;
88
89private:
90 VectorBranch<uint8_t>& m_gasgap{parent().newVector<uint8_t>(name() + "_gasGap")};
91 VectorBranch<bool>& m_measuresPhi{parent().newVector<bool>(name() + "_measuresPhi")};
92 VectorBranch<uint8_t>& m_channel{parent().newVector<uint8_t>(name() + "_channel")};
93};
94
97public:
98 sTgcIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
99
100 void push_back(const Identifier& id) override final;
101
102private:
104 VectorBranch<uint8_t>& m_multiplet{parent().newVector<uint8_t>(name() + "_multiplet")};
105 VectorBranch<uint8_t>& m_channel_type{parent().newVector<uint8_t>(name() + "_channel_type")};
106 VectorBranch<uint16_t>& m_channel{parent().newVector<uint16_t>(name() + "_channel")};
107};
108
111public:
112 MmIdentifierBranch(MuonTesterTree& tree, const std::string& grp_name);
113
114 void push_back(const Identifier& id) override final;
115
116private:
118 VectorBranch<uint8_t>& m_multiplet{parent().newVector<uint8_t>(name() + "_multiplet")};
119 VectorBranch<uint16_t>& m_channel{parent().newVector<uint16_t>(name() + "_channel")};
120};
121}
122#endif
123#endif
VectorBranch< uint8_t > & m_wireLayer
VectorBranch< uint8_t > & m_chamberLayer
CscIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### CscIdentifierBranch #################...
VectorBranch< bool > & m_measuresPhi
VectorBranch< uint8_t > & m_strip
void push_back(const Identifier &id) override final
VectorBranch< uint8_t > & m_tube
VectorBranch< uint8_t > & m_multiLayer
MdtIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### MdtIdentifierBranch #################...
void push_back(const Identifier &id) override final
VectorBranch< uint8_t > & m_tubeLayer
VectorBranch< uint8_t > & m_multiplet
void push_back(const Identifier &id) override final
VectorBranch< uint16_t > & m_channel
VectorBranch< uint8_t > & m_gas_gap
MmIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### MmIdentifierBranch ##################...
bool init() override final
The init method checks whether the branch name has already registered to the MuonTree and tries then ...
VectorBranch< uint8_t > & m_stationPhi
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
VectorBranch< int8_t > & m_stationEta
virtual void push_back(const Identifier &id)
const Muon::IMuonIdHelperSvc * idHelperSvc() const
VectorBranch< uint8_t > & m_stationIndex
bool fill(const EventContext &) override final
The fill method checks if enough information is provided such that the branch is cleared from the inf...
MuonIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
MuonTesterBranch(MuonTesterTree &tree, const std::string &br_name)
MuonTesterTree & parent()
Returns the reference to the MuonTesterTree parent.
std::string name() const override final
Returns the name of the branch.
TTree * tree() override final
Returns the underlying TTree object.
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
VectorBranch< uint8_t > & m_doubletR
void push_back(const Identifier &id) override final
VectorBranch< uint8_t > & m_doubletPhi
VectorBranch< bool > & m_measuresPhi
RpcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### RpcIdentifierBranch #################...
VectorBranch< uint8_t > & m_doubletZ
VectorBranch< uint8_t > & m_gasGap
VectorBranch< uint8_t > & m_strip
VectorBranch< uint8_t > & m_gasgap
TgcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### TgcIdentifierBranch #################...
VectorBranch< uint8_t > & m_channel
VectorBranch< bool > & m_measuresPhi
void push_back(const Identifier &id) override final
VectorBranch< uint8_t > & m_multiplet
void push_back(const Identifier &id) override final
VectorBranch< uint8_t > & m_gas_gap
VectorBranch< uint16_t > & m_channel
VectorBranch< uint8_t > & m_channel_type
sTgcIdentifierBranch(MuonTesterTree &tree, const std::string &grp_name)
############################################################### sTgcIdentifierBranch ################...
Interface for Helper service that creates muon Identifiers and can be used to print Identifiers.
Class to store array like branches into the n-tuples.
Definition HitValAlg.cxx:19