ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileSvc
TileByteStream
src
TileRawDataReadingAlg.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 TILEBYTESTREAM_TILERAWDATAREADINDINGALG_H
6
#define TILEBYTESTREAM_TILERAWDATAREADINDINGALG_H
7
8
#include "
TileByteStream/TileROD_Decoder.h
"
9
#include "
TileByteStream/TileHid2RESrcID.h
"
10
#include "
TileEvent/TileDigitsContainer.h
"
11
#include "
TileEvent/TileRawChannelContainer.h
"
12
#include "
TileEvent/TileBeamElemContainer.h
"
13
#include "
TileEvent/TileLaserObject.h
"
14
#include "
TileEvent/TileContainer.h
"
15
#include "
TileIdentifier/TileFragHash.h
"
16
#include "
TileConditions/TileCablingSvc.h
"
17
18
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
19
#include "
ByteStreamCnvSvcBase/IROBDataProviderSvc.h
"
20
#include "
StoreGate/WriteHandleKey.h
"
21
#include "
StoreGate/ReadCondHandleKey.h
"
22
23
#include "GaudiKernel/ToolHandle.h"
24
#include "GaudiKernel/ServiceHandle.h"
25
26
30
class
TileRawDataReadingAlg
:
public
AthReentrantAlgorithm
{
31
public
:
32
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
33
34
StatusCode
initialize
()
override
;
35
StatusCode
execute
(
const
EventContext& ctx)
const override
;
36
37
private
:
38
39
template
<
class
GetRobOperation,
class
FillCollOperation>
40
StatusCode
readDigits
(
const
SG::WriteHandleKey<TileDigitsContainer>
& digitsKey,
41
const
EventContext& ctx,
const
TileHid2RESrcID
* hid2re,
42
GetRobOperation getRobFromFragID, FillCollOperation fillCollection,
43
unsigned
int
offsetID=0)
const
;
44
45
template
<
class
GetRobOperation,
class
FillCollOperation>
46
StatusCode
readRawChannels
(
const
SG::WriteHandleKey<TileRawChannelContainer>
& rawChannelsKey,
47
const
EventContext& ctx,
const
TileHid2RESrcID
* hid2re,
48
GetRobOperation getRobFromFragID, FillCollOperation fillCollection,
49
TileFragHash::TYPE
type
=
TileFragHash::OptFilterDsp
)
const
;
50
51
StatusCode
readBeamElements
(
const
SG::WriteHandleKey<TileBeamElemContainer>
& beamElementsKey,
52
const
EventContext& ctx,
const
TileHid2RESrcID
* hid2re)
const
;
53
54
StatusCode
readLaserObject
(
const
SG::WriteHandleKey<TileLaserObject>
& laserObjectKey,
55
const
EventContext& ctx,
const
TileHid2RESrcID
* hid2re)
const
;
56
57
StatusCode
readMuonReceiver
(
const
SG::WriteHandleKey<TileMuonReceiverContainer>
& muRcvKey,
58
const
EventContext& ctx)
const
;
59
60
StatusCode
readL2
(
const
SG::WriteHandleKey<TileL2Container>
& l2Key,
61
const
EventContext& ctx)
const
;
62
63
SG::WriteHandleKey<TileDigitsContainer>
m_digitsContainerKey
{
this
,
64
"TileDigitsContainer"
,
""
,
"Output Tile digits container key"
};
65
66
SG::WriteHandleKey<TileDigitsContainer>
m_flxDigitsContainerKey
{
this
,
67
"TileDigitsFlxContainer"
,
""
,
"Output Tile FELIX digits container key"
};
68
69
SG::WriteHandleKey<TileDigitsContainer>
m_muRcvDigitsContainerKey
{
this
,
70
"MuRcvDigitsContainer"
,
""
,
"Output Tile TMDB digits container key"
};
71
72
SG::WriteHandleKey<TileRawChannelContainer>
m_rawChannelContainerKey
{
this
,
73
"TileRawChannelContainer"
,
""
,
"Output Tile raw channels container key"
};
74
75
SG::WriteHandleKey<TileRawChannelContainer>
m_muRcvRawChannelContainerKey
{
this
,
76
"MuRcvRawChannelContainer"
,
""
,
"Output Tile TMDB raw channels container key"
};
77
78
SG::WriteHandleKey<TileBeamElemContainer>
m_beamElemContainerKey
{
this
,
79
"TileBeamElemContainer"
,
""
,
"Output Tile beam elements container key"
};
80
81
SG::WriteHandleKey<TileLaserObject>
m_laserObjectKey
{
this
,
82
"TileLaserObject"
,
""
,
"Output Tile object key"
};
83
84
SG::WriteHandleKey<TileMuonReceiverContainer>
m_muonReceiverContainerKey
{
this
,
85
"TileMuonReceiverContainer"
,
""
,
"Output Tile muon receiver container key"
};
86
87
SG::WriteHandleKey<TileL2Container>
m_l2ContainerKey
{
this
,
88
"TileL2Container"
,
""
,
"Output Tile L2 container key"
};
89
90
SG::ReadCondHandleKey<TileHid2RESrcID>
m_hid2RESrcIDKey
{
this
,
91
"TileHid2RESrcID"
,
"TileHid2RESrcID"
,
"TileHid2RESrcID key"
};
92
96
ServiceHandle<IROBDataProviderSvc>
m_robSvc
{
this
,
97
"ROBDataProviderSvc"
,
"ROBDataProviderSvc"
,
"The ROB data provider service"
};
98
99
ToolHandle<TileROD_Decoder>
m_decoder
{
this
,
100
"TileROD_Decoder"
,
"TileROD_Decoder"
,
"Tile ROD decoder"
};
101
102
/*
103
* @brief Name of Tile cabling service
104
*/
105
ServiceHandle<TileCablingSvc>
m_cablingSvc
{
this
,
106
"TileCablingSvc"
,
"TileCablingSvc"
,
"The Tile cabling service"
};
107
108
//Switches set in initialize() based of SG keys of output object
109
bool
m_doDigits
{
false
};
110
bool
m_doMuRcvDigits
{
false
};
111
bool
m_doFlxDigits
{
false
};
112
bool
m_doRawChannels
{
false
};
113
bool
m_doMuRcvRawChannels
{
false
};
114
bool
m_doBeamElements
{
false
};
115
bool
m_doLaserObject
{
false
};
116
bool
m_doMuonReceiver
{
false
};
117
bool
m_doL2
{
false
};
118
};
119
120
#endif
AthReentrantAlgorithm.h
IROBDataProviderSvc.h
ReadCondHandleKey.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
TileBeamElemContainer.h
TileCablingSvc.h
TileContainer.h
TileDigitsContainer.h
TileFragHash.h
TileHid2RESrcID.h
TileLaserObject.h
TileROD_Decoder.h
TileRawChannelContainer.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
ServiceHandle
Definition
ClusterMakerTool.h:36
TileFragHash::TYPE
TYPE
initialize
Definition
TileFragHash.h:33
TileFragHash::OptFilterDsp
@ OptFilterDsp
Definition
TileFragHash.h:34
TileHid2RESrcID
This class provides conversion between fragment ID and RESrcID.
Definition
TileHid2RESrcID.h:28
TileRawDataReadingAlg
Class for Tile raw data reading from BS.
Definition
TileRawDataReadingAlg.h:30
TileRawDataReadingAlg::m_doLaserObject
bool m_doLaserObject
Definition
TileRawDataReadingAlg.h:115
TileRawDataReadingAlg::m_doBeamElements
bool m_doBeamElements
Definition
TileRawDataReadingAlg.h:114
TileRawDataReadingAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition
TileRawDataReadingAlg.cxx:70
TileRawDataReadingAlg::m_doRawChannels
bool m_doRawChannels
Definition
TileRawDataReadingAlg.h:112
TileRawDataReadingAlg::m_doFlxDigits
bool m_doFlxDigits
Definition
TileRawDataReadingAlg.h:111
TileRawDataReadingAlg::m_doMuonReceiver
bool m_doMuonReceiver
Definition
TileRawDataReadingAlg.h:116
TileRawDataReadingAlg::m_rawChannelContainerKey
SG::WriteHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
Definition
TileRawDataReadingAlg.h:72
TileRawDataReadingAlg::m_laserObjectKey
SG::WriteHandleKey< TileLaserObject > m_laserObjectKey
Definition
TileRawDataReadingAlg.h:81
TileRawDataReadingAlg::m_hid2RESrcIDKey
SG::ReadCondHandleKey< TileHid2RESrcID > m_hid2RESrcIDKey
Definition
TileRawDataReadingAlg.h:90
TileRawDataReadingAlg::m_doMuRcvRawChannels
bool m_doMuRcvRawChannels
Definition
TileRawDataReadingAlg.h:113
TileRawDataReadingAlg::readL2
StatusCode readL2(const SG::WriteHandleKey< TileL2Container > &l2Key, const EventContext &ctx) const
Definition
TileRawDataReadingAlg.cxx:343
TileRawDataReadingAlg::m_l2ContainerKey
SG::WriteHandleKey< TileL2Container > m_l2ContainerKey
Definition
TileRawDataReadingAlg.h:87
TileRawDataReadingAlg::m_muRcvDigitsContainerKey
SG::WriteHandleKey< TileDigitsContainer > m_muRcvDigitsContainerKey
Definition
TileRawDataReadingAlg.h:69
TileRawDataReadingAlg::initialize
StatusCode initialize() override
Definition
TileRawDataReadingAlg.cxx:20
TileRawDataReadingAlg::m_doL2
bool m_doL2
Definition
TileRawDataReadingAlg.h:117
TileRawDataReadingAlg::m_digitsContainerKey
SG::WriteHandleKey< TileDigitsContainer > m_digitsContainerKey
Definition
TileRawDataReadingAlg.h:63
TileRawDataReadingAlg::readMuonReceiver
StatusCode readMuonReceiver(const SG::WriteHandleKey< TileMuonReceiverContainer > &muRcvKey, const EventContext &ctx) const
Definition
TileRawDataReadingAlg.cxx:321
TileRawDataReadingAlg::m_doMuRcvDigits
bool m_doMuRcvDigits
Definition
TileRawDataReadingAlg.h:110
TileRawDataReadingAlg::readRawChannels
StatusCode readRawChannels(const SG::WriteHandleKey< TileRawChannelContainer > &rawChannelsKey, const EventContext &ctx, const TileHid2RESrcID *hid2re, GetRobOperation getRobFromFragID, FillCollOperation fillCollection, TileFragHash::TYPE type=TileFragHash::OptFilterDsp) const
Definition
TileRawDataReadingAlg.cxx:178
TileRawDataReadingAlg::m_decoder
ToolHandle< TileROD_Decoder > m_decoder
Definition
TileRawDataReadingAlg.h:99
TileRawDataReadingAlg::readBeamElements
StatusCode readBeamElements(const SG::WriteHandleKey< TileBeamElemContainer > &beamElementsKey, const EventContext &ctx, const TileHid2RESrcID *hid2re) const
Definition
TileRawDataReadingAlg.cxx:257
TileRawDataReadingAlg::readLaserObject
StatusCode readLaserObject(const SG::WriteHandleKey< TileLaserObject > &laserObjectKey, const EventContext &ctx, const TileHid2RESrcID *hid2re) const
Definition
TileRawDataReadingAlg.cxx:294
TileRawDataReadingAlg::m_doDigits
bool m_doDigits
Definition
TileRawDataReadingAlg.h:109
TileRawDataReadingAlg::m_muRcvRawChannelContainerKey
SG::WriteHandleKey< TileRawChannelContainer > m_muRcvRawChannelContainerKey
Definition
TileRawDataReadingAlg.h:75
TileRawDataReadingAlg::m_muonReceiverContainerKey
SG::WriteHandleKey< TileMuonReceiverContainer > m_muonReceiverContainerKey
Definition
TileRawDataReadingAlg.h:84
TileRawDataReadingAlg::m_flxDigitsContainerKey
SG::WriteHandleKey< TileDigitsContainer > m_flxDigitsContainerKey
Definition
TileRawDataReadingAlg.h:66
TileRawDataReadingAlg::m_cablingSvc
ServiceHandle< TileCablingSvc > m_cablingSvc
Definition
TileRawDataReadingAlg.h:105
TileRawDataReadingAlg::m_beamElemContainerKey
SG::WriteHandleKey< TileBeamElemContainer > m_beamElemContainerKey
Definition
TileRawDataReadingAlg.h:78
TileRawDataReadingAlg::m_robSvc
ServiceHandle< IROBDataProviderSvc > m_robSvc
Name of ROB data provider service.
Definition
TileRawDataReadingAlg.h:96
TileRawDataReadingAlg::readDigits
StatusCode readDigits(const SG::WriteHandleKey< TileDigitsContainer > &digitsKey, const EventContext &ctx, const TileHid2RESrcID *hid2re, GetRobOperation getRobFromFragID, FillCollOperation fillCollection, unsigned int offsetID=0) const
Definition
TileRawDataReadingAlg.cxx:135
type
Generated on
for ATLAS Offline Software by
1.17.0