ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonValidation
MuonPRDTest
MuonPRDTest
SegmentVariables.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUONPRDTEST_SEGMENTVARIABLES_H
6
#define MUONPRDTEST_SEGMENTVARIABLES_H
7
8
#include "
MuonPRDTest/PrdTesterModule.h
"
9
10
#include "
StoreGate/ReadDecorHandleKeyArray.h
"
11
#include "
xAODMuon/MuonSegmentContainer.h
"
12
13
namespace
MuonPRDTest
{
16
class
SegmentVariables
:
public
PrdTesterModule
{
17
public
:
18
SegmentVariables
(
MuonTesterTree
&
tree
,
19
const
std::string& containerKey,
20
const
std::string& outName,
21
MSG::Level msglvl);
22
23
bool
fill
(
const
EventContext& ctx)
override
final
;
24
bool
declare_keys
()
override
final
;
25
27
unsigned
int
push_back
(
const
xAOD::MuonSegment
& segment);
29
bool
addVariable
(std::shared_ptr<IAuxElementDecorationBranch> br);
30
private
:
31
unsigned
int
fill
(
const
xAOD::MuonSegment
& segment);
32
34
SG::ReadHandleKey<xAOD::MuonSegmentContainer>
m_key
{};
36
std::string
m_name
{};
38
ThreeVectorBranch
m_pos
{
parent
(),
m_name
+
"_pos"
};
40
UnitThreeVectorBranch
m_dir
{
parent
(),
m_name
+
"_dir"
};
42
VectorBranch<char>
&
m_etaIdx
{
parent
().
newVector
<
char
>(
m_name
+
"_etaIndex"
)};
44
VectorBranch<uint8_t>
&
m_sector
{
parent
().
newVector
<uint8_t>(
m_name
+
"_sector"
)};
46
VectorBranch<uint8_t>
&
m_chamberIdx
{
parent
().
newVector
<uint8_t>(
m_name
+
"_chamberIdx"
)};
48
VectorBranch<float>
&
m_chi2
{
parent
().
newVector
<
float
>(
m_name
+
"_chi2"
)};
50
VectorBranch<unsigned int>
&
m_nDoF
{
parent
().
newVector
<
unsigned
int
>(
m_name
+
"_nDoF"
)};
52
VectorBranch<uint8_t>
&
m_nPrecHits
{
parent
().
newVector
<uint8_t>(
m_name
+
"_nPrecHits"
)};
54
VectorBranch<uint8_t>
&
m_nTrigEtaLayers
{
parent
().
newVector
<uint8_t>(
m_name
+
"_nTrigEtaLayers"
)};
56
VectorBranch<uint8_t>
&
m_nTrigPhiLayers
{
parent
().
newVector
<uint8_t>(
m_name
+
"_nTrigPhiLayers"
)};
58
std::vector<std::shared_ptr<IAuxElementDecorationBranch>>
m_addBranches
{};
59
bool
m_filterMode
{
false
};
60
std::unordered_map<const xAOD::MuonSegment*, unsigned int>
m_idxLookUp
{};
61
62
};
63
}
64
#endif
MuonSegmentContainer.h
PrdTesterModule.h
ReadDecorHandleKeyArray.h
MuonPRDTest::PrdTesterModule::PrdTesterModule
PrdTesterModule(MuonTesterTree &tree, const std::string &grp_name, MSG::Level msglvl)
Definition
PrdTesterModule.cxx:8
MuonPRDTest::SegmentVariables::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
SegmentVariables.cxx:27
MuonPRDTest::SegmentVariables::m_etaIdx
VectorBranch< char > & m_etaIdx
Station-eta index of the segment's precision hits.
Definition
SegmentVariables.h:42
MuonPRDTest::SegmentVariables::m_nPrecHits
VectorBranch< uint8_t > & m_nPrecHits
Number of precision hits i.e.
Definition
SegmentVariables.h:52
MuonPRDTest::SegmentVariables::m_sector
VectorBranch< uint8_t > & m_sector
MS-sector of the segment's precision hits.
Definition
SegmentVariables.h:44
MuonPRDTest::SegmentVariables::push_back
unsigned int push_back(const xAOD::MuonSegment &segment)
push back a particuar segment
Definition
SegmentVariables.cxx:44
MuonPRDTest::SegmentVariables::m_nTrigEtaLayers
VectorBranch< uint8_t > & m_nTrigEtaLayers
Number of trigger hits, i.e.
Definition
SegmentVariables.h:54
MuonPRDTest::SegmentVariables::SegmentVariables
SegmentVariables(MuonTesterTree &tree, const std::string &containerKey, const std::string &outName, MSG::Level msglvl)
Definition
SegmentVariables.cxx:10
MuonPRDTest::SegmentVariables::declare_keys
bool declare_keys() override final
Definition
SegmentVariables.cxx:41
MuonPRDTest::SegmentVariables::m_chi2
VectorBranch< float > & m_chi2
chi 2 of the segment fit
Definition
SegmentVariables.h:48
MuonPRDTest::SegmentVariables::m_chamberIdx
VectorBranch< uint8_t > & m_chamberIdx
MS station of the segment.
Definition
SegmentVariables.h:46
MuonPRDTest::SegmentVariables::m_nDoF
VectorBranch< unsigned int > & m_nDoF
number of degrees of freedom
Definition
SegmentVariables.h:50
MuonPRDTest::SegmentVariables::m_key
SG::ReadHandleKey< xAOD::MuonSegmentContainer > m_key
Store gate key of the segment container.
Definition
SegmentVariables.h:34
MuonPRDTest::SegmentVariables::addVariable
bool addVariable(std::shared_ptr< IAuxElementDecorationBranch > br)
Definition
SegmentVariables.cxx:48
MuonPRDTest::SegmentVariables::m_dir
UnitThreeVectorBranch m_dir
Global direction of the segment.
Definition
SegmentVariables.h:40
MuonPRDTest::SegmentVariables::m_idxLookUp
std::unordered_map< const xAOD::MuonSegment *, unsigned int > m_idxLookUp
Definition
SegmentVariables.h:60
MuonPRDTest::SegmentVariables::m_pos
ThreeVectorBranch m_pos
Global position of the segment.
Definition
SegmentVariables.h:38
MuonPRDTest::SegmentVariables::m_nTrigPhiLayers
VectorBranch< uint8_t > & m_nTrigPhiLayers
Number of trigger hits, i.e.
Definition
SegmentVariables.h:56
MuonPRDTest::SegmentVariables::m_addBranches
std::vector< std::shared_ptr< IAuxElementDecorationBranch > > m_addBranches
Definition
SegmentVariables.h:58
MuonPRDTest::SegmentVariables::m_filterMode
bool m_filterMode
Definition
SegmentVariables.h:59
MuonPRDTest::SegmentVariables::m_name
std::string m_name
Name of the segment collection in the output collection.
Definition
SegmentVariables.h:36
MuonVal::MuonTesterBranch::parent
MuonTesterTree & parent()
Returns the reference to the MuonTesterTree parent.
Definition
MuonTesterBranch.cxx:38
MuonVal::MuonTesterBranch::tree
TTree * tree() override final
Returns the underlying TTree object.
Definition
MuonTesterBranch.cxx:53
MuonVal::MuonTesterTree
Definition
MuonTesterTree.h:38
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
MuonVal::ThreeVectorBranch
Definition
ThreeVectorBranch.h:14
MuonVal::UnitThreeVectorBranch
Definition
ThreeVectorBranch.h:41
MuonVal::VectorBranch
Definition
VectorBranch.h:14
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
MuonPRDTest
Definition
MuonHitTesterAlg.h:15
xAOD::MuonSegment
MuonSegment_v1 MuonSegment
Reference the current persistent version:
Definition
Event/xAOD/xAODMuon/xAODMuon/MuonSegment.h:13
Generated on
for ATLAS Offline Software by
1.17.0