ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCnv
LArByteStream
src
LArRawSCDataReadingAlg.h
Go to the documentation of this file.
1
//Dear emacs, this is -*-c++-*-
2
/*
3
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
4
*/
5
6
#ifndef LARBYTESTREAM_LARRAWSCDATAREADINDINGALG_H
7
#define LARBYTESTREAM_LARRAWSCDATAREADINDINGALG_H
8
9
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
10
#include "
StoreGate/WriteHandle.h
"
11
#include "
StoreGate/ReadCondHandle.h
"
12
#include "
LArCabling/LArLATOMEMapping.h
"
13
#include "GaudiKernel/ServiceHandle.h"
14
15
#include "
StoreGate/ReadHandleKey.h
"
16
#include "GaudiKernel/ToolHandle.h"
17
18
#include "
LArByteStream/LArLATOMEDecoder.h
"
19
// For LATOME while no Condition alg exists
20
#include "
LArLATOMEROBIDs.h
"
21
22
//Event classes
23
class
LArDigitContainer
;
24
class
LArRawSCContainer
;
25
class
LArLATOMEHeaderContainer
;
26
class
LArOnlineID
;
27
class
LArOnline_SuperCellID
;
28
class
IROBDataProviderSvc
;
29
30
class
LArRawSCDataReadingAlg
:
public
AthReentrantAlgorithm
{
31
32
public
:
33
LArRawSCDataReadingAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
34
35
StatusCode
initialize
()
override
;
36
StatusCode
execute
(
const
EventContext& ctx)
const override
;
37
38
private
:
39
// Mapping input
40
SG::ReadCondHandleKey<LArLATOMEMapping>
m_mapKey
{
this
,
"MappingKey"
,
"LArLATOMEMap"
};
41
//Event output:
42
SG::WriteHandleKey<LArDigitContainer>
m_adcCollKey
{
this
,
"adcCollKey"
,
"SC"
};
43
SG::WriteHandleKey<LArDigitContainer>
m_adcBasCollKey
{
this
,
"adcBasCollKey"
,
"SC_ADC_BAS"
};
44
SG::WriteHandleKey<LArRawSCContainer>
m_etCollKey
{
this
,
"etCollKey"
,
"SC_ET"
,
"SG key of the LArRawSCContainer"
};
45
SG::WriteHandleKey<LArRawSCContainer>
m_etIdCollKey
{
this
,
"etIdCollKey"
,
"SC_ET_ID"
,
"SG key of the LArRawSCContainer"
};
46
SG::WriteHandleKey<LArLATOMEHeaderContainer>
m_latomeHeaderCollKey
{
this
,
"LArLATOMEHeaderKey"
,
"SC_LATOME_HEADER"
,
"SG key of the LArLATOMEHEaderContainer"
};
47
48
//Service providing the input data
49
ServiceHandle<IROBDataProviderSvc>
m_robDataProviderSvc
{
this
,
"ROBDataProviderSvc"
,
"ROBDataProviderSvc"
};
50
// RoI like behavior of the converter
51
Gaudi::Property<std::vector<uint32_t> >
m_robList
{
this
,
"ROBList"
,
LArByteStream::s_allROBIDs_LATOME
,
"ROB List to only unpack selected ROBs"
};
52
53
//Identifier helper
54
const
LArOnlineID
*
m_onlineId
=
nullptr
;
55
56
// The LATOME Decoder tool
57
ToolHandle<LArLATOMEDecoder>
m_latomeDecoder
;
58
59
//Switches set in initialize() based of SG keys of output object
60
bool
m_doAdc
=
true
;
61
bool
m_doAdcBas
=
true
;
62
bool
m_doEt
=
true
;
63
bool
m_doEtId
=
true
;
64
bool
m_doLATOMEHeader
=
true
;
65
66
};
67
68
#endif
AthReentrantAlgorithm.h
LArLATOMEDecoder.h
Byte stream converter of LATOME.
LArLATOMEMapping.h
LArLATOMEROBIDs.h
ReadCondHandle.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandle.h
Handle class for recording to StoreGate.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition
IROBDataProviderSvc.h:21
LArDigitContainer
Container class for LArDigit.
Definition
LArDigitContainer.h:24
LArLATOMEHeaderContainer
Container class for LArLATOMEHeader.
Definition
LArLATOMEHeaderContainer.h:19
LArOnlineID
Definition
LArOnlineID.h:21
LArOnline_SuperCellID
Definition
LArOnline_SuperCellID.h:21
LArRawSCContainer
Container class for LArRawSC.
Definition
LArRawSCContainer.h:17
LArRawSCDataReadingAlg::m_mapKey
SG::ReadCondHandleKey< LArLATOMEMapping > m_mapKey
Definition
LArRawSCDataReadingAlg.h:40
LArRawSCDataReadingAlg::m_adcBasCollKey
SG::WriteHandleKey< LArDigitContainer > m_adcBasCollKey
Definition
LArRawSCDataReadingAlg.h:43
LArRawSCDataReadingAlg::m_doEt
bool m_doEt
Definition
LArRawSCDataReadingAlg.h:62
LArRawSCDataReadingAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition
LArRawSCDataReadingAlg.cxx:51
LArRawSCDataReadingAlg::m_doAdc
bool m_doAdc
Definition
LArRawSCDataReadingAlg.h:60
LArRawSCDataReadingAlg::m_adcCollKey
SG::WriteHandleKey< LArDigitContainer > m_adcCollKey
Definition
LArRawSCDataReadingAlg.h:42
LArRawSCDataReadingAlg::m_robList
Gaudi::Property< std::vector< uint32_t > > m_robList
Definition
LArRawSCDataReadingAlg.h:51
LArRawSCDataReadingAlg::m_doEtId
bool m_doEtId
Definition
LArRawSCDataReadingAlg.h:63
LArRawSCDataReadingAlg::m_robDataProviderSvc
ServiceHandle< IROBDataProviderSvc > m_robDataProviderSvc
Definition
LArRawSCDataReadingAlg.h:49
LArRawSCDataReadingAlg::initialize
StatusCode initialize() override
Definition
LArRawSCDataReadingAlg.cxx:23
LArRawSCDataReadingAlg::m_doAdcBas
bool m_doAdcBas
Definition
LArRawSCDataReadingAlg.h:61
LArRawSCDataReadingAlg::m_onlineId
const LArOnlineID * m_onlineId
Definition
LArRawSCDataReadingAlg.h:54
LArRawSCDataReadingAlg::m_etCollKey
SG::WriteHandleKey< LArRawSCContainer > m_etCollKey
Definition
LArRawSCDataReadingAlg.h:44
LArRawSCDataReadingAlg::m_etIdCollKey
SG::WriteHandleKey< LArRawSCContainer > m_etIdCollKey
Definition
LArRawSCDataReadingAlg.h:45
LArRawSCDataReadingAlg::m_latomeDecoder
ToolHandle< LArLATOMEDecoder > m_latomeDecoder
Definition
LArRawSCDataReadingAlg.h:57
LArRawSCDataReadingAlg::m_latomeHeaderCollKey
SG::WriteHandleKey< LArLATOMEHeaderContainer > m_latomeHeaderCollKey
Definition
LArRawSCDataReadingAlg.h:46
LArRawSCDataReadingAlg::LArRawSCDataReadingAlg
LArRawSCDataReadingAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
LArRawSCDataReadingAlg.cxx:15
LArRawSCDataReadingAlg::m_doLATOMEHeader
bool m_doLATOMEHeader
Definition
LArRawSCDataReadingAlg.h:64
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
LArByteStream::s_allROBIDs_LATOME
static const std::vector< uint32_t > s_allROBIDs_LATOME
Definition
LArLATOMEROBIDs.h:8
Generated on
for ATLAS Offline Software by
1.17.0