ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAlgorithms
TrigL2MuonSA
src
MdtDataPreparator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGL2MUONSA_MDTDATAPREPARATOR_H
6
#define TRIGL2MUONSA_MDTDATAPREPARATOR_H
7
8
#include "
AthenaBaseComps/AthAlgTool.h
"
9
#include "GaudiKernel/ServiceHandle.h"
10
11
#include "
MuonCnvToolInterfaces/IMuonRdoToPrepDataTool.h
"
12
#include "
IRegionSelector/IRegSelTool.h
"
13
#include "
Identifier/IdentifierHash.h
"
14
#include "
TrigSteeringEvent/TrigRoiDescriptor.h
"
15
#include "
MuonIdHelpers/IMuonIdHelperSvc.h
"
16
#include "
MuonCablingData/MuonMDT_CablingMap.h
"
17
#include "
MuonPrepRawData/MuonPrepDataContainer.h
"
18
#include "
MuonReadoutGeometry/MuonDetectorManager.h
"
19
20
#include "
MdtData.h
"
21
#include "
MdtRegionDefiner.h
"
22
23
#include "
RpcFitResult.h
"
24
#include "
TgcFitResult.h
"
25
#include <unordered_set>
26
27
namespace
MuonGM
{
28
class
MdtReadoutElement
;
29
class
MuonStation
;
30
}
31
32
// --------------------------------------------------------------------------------
33
// --------------------------------------------------------------------------------
34
35
namespace
TrigL2MuonSA
{
36
37
class
MdtDataPreparator
:
public
AthAlgTool
38
{
39
public
:
40
41
static
const
InterfaceID&
interfaceID
();
42
43
using
AthAlgTool::AthAlgTool
;
44
45
virtual
StatusCode
initialize
()
override
;
46
47
StatusCode
prepareData
(
const
EventContext& ctx,
48
const
TrigRoiDescriptor
* p_roids,
49
const
TrigL2MuonSA::RpcFitResult
& rpcFitResult,
50
TrigL2MuonSA::MuonRoad
& muonRoad,
51
TrigL2MuonSA::MdtRegion
& mdtRegion,
52
TrigL2MuonSA::MdtHits
& mdtHits)
const
;
53
54
StatusCode
prepareData
(
const
EventContext& ctx,
55
const
TrigRoiDescriptor
* p_roids,
56
const
TrigL2MuonSA::TgcFitResult
& tgcFitResult,
57
TrigL2MuonSA::MuonRoad
& muonRoad,
58
TrigL2MuonSA::MdtRegion
& mdtRegion,
59
TrigL2MuonSA::MdtHits
& mdtHits)
const
;
60
61
void
setRpcGeometry
(
bool
use_rpc) {
m_mdtRegionDefiner
->setRpcGeometry(use_rpc);};
62
void
setRoIBasedDataAccess
(
bool
use_RoIBasedDataAccess){
m_use_RoIBasedDataAccess
= use_RoIBasedDataAccess;};
63
64
private
:
65
66
StatusCode
getMdtHits
(
67
const
EventContext& ctx,
68
const
TrigRoiDescriptor
* p_roids,
69
TrigL2MuonSA::MuonRoad
& muonRoad,
70
TrigL2MuonSA::MdtHits
& mdtHits)
const
;
71
72
StatusCode
collectMdtHitsFromPrepData
(
const
EventContext& ctx,
73
const
std::vector<IdentifierHash>& v_idHash,
74
TrigL2MuonSA::MdtHits
& mdtHits,
75
const
TrigL2MuonSA::MuonRoad
& muonRoad)
const
;
76
77
void
initDeadChannels
(
const
MuonGM::MdtReadoutElement
* mydetEl);
78
79
// Geometry Services
80
ServiceHandle<Muon::IMuonIdHelperSvc>
m_idHelperSvc
{
this
,
"MuonIdHelperSvc"
,
"Muon::MuonIdHelperSvc/MuonIdHelperSvc"
};
81
82
// Region Selector
83
ToolHandle<IRegSelTool>
m_regionSelector
{
this
,
"RegSel_MDT"
,
"RegSelTool/RegSelTool_MDT"
};
84
85
// MdtRegionDefiner
86
ToolHandle<MdtRegionDefiner>
m_mdtRegionDefiner
{
87
this
,
"MdtRegionDefiner"
,
"TrigL2MuonSA::MdtRegionDefiner"
};
88
89
// handles to data access
90
SG::ReadHandleKey<Muon::MdtPrepDataContainer>
m_mdtPrepContainerKey
{
91
this
,
"MDTPrepDataContainer"
,
"MDT_DriftCircles"
,
"Name of the MDTContainer to read in"
};
92
93
Gaudi::Property<bool>
m_isPhase2
{
this
,
"isPhase2"
,
false
,
"if the phase 2 geometry is setup"
};
94
Gaudi::Property<bool>
m_use_RoIBasedDataAccess
{
this
,
"use_RoIBasedDataAccess"
,
false
};
95
96
int
m_BMGid
{0};
97
std::unordered_set<Identifier>
m_DeadChannels
{};
98
};
99
100
}
// namespace TrigL2MuonSA
101
102
#endif
//
AthAlgTool.h
IMuonIdHelperSvc.h
IMuonRdoToPrepDataTool.h
IRegSelTool.h
IdentifierHash.h
MdtData.h
MdtRegionDefiner.h
MuonDetectorManager.h
MuonMDT_CablingMap.h
MuonPrepDataContainer.h
RpcFitResult.h
TgcFitResult.h
TrigRoiDescriptor.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
MuonGM::MdtReadoutElement
Definition
MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/MdtReadoutElement.h:51
MuonGM::MuonStation
Definition
MuonStation.h:51
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
ServiceHandle
Definition
ClusterMakerTool.h:36
TrigL2MuonSA::MdtDataPreparator
Definition
MdtDataPreparator.h:38
TrigL2MuonSA::MdtDataPreparator::collectMdtHitsFromPrepData
StatusCode collectMdtHitsFromPrepData(const EventContext &ctx, const std::vector< IdentifierHash > &v_idHash, TrigL2MuonSA::MdtHits &mdtHits, const TrigL2MuonSA::MuonRoad &muonRoad) const
Definition
MdtDataPreparator.cxx:146
TrigL2MuonSA::MdtDataPreparator::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
TrigL2MuonSA::MdtDataPreparator::setRpcGeometry
void setRpcGeometry(bool use_rpc)
Definition
MdtDataPreparator.h:61
TrigL2MuonSA::MdtDataPreparator::m_BMGid
int m_BMGid
Definition
MdtDataPreparator.h:96
TrigL2MuonSA::MdtDataPreparator::prepareData
StatusCode prepareData(const EventContext &ctx, const TrigRoiDescriptor *p_roids, const TrigL2MuonSA::RpcFitResult &rpcFitResult, TrigL2MuonSA::MuonRoad &muonRoad, TrigL2MuonSA::MdtRegion &mdtRegion, TrigL2MuonSA::MdtHits &mdtHits) const
Definition
MdtDataPreparator.cxx:74
TrigL2MuonSA::MdtDataPreparator::setRoIBasedDataAccess
void setRoIBasedDataAccess(bool use_RoIBasedDataAccess)
Definition
MdtDataPreparator.h:62
TrigL2MuonSA::MdtDataPreparator::m_DeadChannels
std::unordered_set< Identifier > m_DeadChannels
Definition
MdtDataPreparator.h:97
TrigL2MuonSA::MdtDataPreparator::initDeadChannels
void initDeadChannels(const MuonGM::MdtReadoutElement *mydetEl)
Definition
MdtDataPreparator.cxx:295
TrigL2MuonSA::MdtDataPreparator::initialize
virtual StatusCode initialize() override
Definition
MdtDataPreparator.cxx:32
TrigL2MuonSA::MdtDataPreparator::getMdtHits
StatusCode getMdtHits(const EventContext &ctx, const TrigRoiDescriptor *p_roids, TrigL2MuonSA::MuonRoad &muonRoad, TrigL2MuonSA::MdtHits &mdtHits) const
Definition
MdtDataPreparator.cxx:113
TrigL2MuonSA::MdtDataPreparator::m_use_RoIBasedDataAccess
Gaudi::Property< bool > m_use_RoIBasedDataAccess
Definition
MdtDataPreparator.h:94
TrigL2MuonSA::MdtDataPreparator::m_isPhase2
Gaudi::Property< bool > m_isPhase2
Definition
MdtDataPreparator.h:93
TrigL2MuonSA::MdtDataPreparator::m_regionSelector
ToolHandle< IRegSelTool > m_regionSelector
Definition
MdtDataPreparator.h:83
TrigL2MuonSA::MdtDataPreparator::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition
MdtDataPreparator.h:80
TrigL2MuonSA::MdtDataPreparator::m_mdtRegionDefiner
ToolHandle< MdtRegionDefiner > m_mdtRegionDefiner
Definition
MdtDataPreparator.h:86
TrigL2MuonSA::MdtDataPreparator::m_mdtPrepContainerKey
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_mdtPrepContainerKey
Definition
MdtDataPreparator.h:90
TrigL2MuonSA::MdtDataPreparator::interfaceID
static const InterfaceID & interfaceID()
TrigL2MuonSA::MdtRegion
Definition
MdtRegion.h:15
TrigL2MuonSA::MuonRoad
Definition
MuonRoad.h:20
TrigL2MuonSA::RpcFitResult
Definition
RpcFitResult.h:14
TrigL2MuonSA::TgcFitResult
Definition
TgcFitResult.h:11
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits ifndef XAOD_ANA...
Definition
TrigRoiDescriptor.h:48
MuonGM
Ensure that the Athena extensions are properly loaded.
Definition
GeoMuonHits.h:27
TrigL2MuonSA
Definition
AlignmentBarrelLUT.h:13
TrigL2MuonSA::MdtHits
std::vector< MdtHitData > MdtHits
Definition
MdtData.h:56
Generated on
for ATLAS Offline Software by
1.17.0