ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCnv
LArByteStream
src
LArRawCalibDataReadingAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LARBYTESTREAM_LARRAWCALIBDATAREADINDINGALG_H
6
#define LARBYTESTREAM_LARRAWCALIBDATAREADINDINGALG_H
7
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
#include "
StoreGate/WriteHandle.h
"
10
#include "
StoreGate/ReadCondHandle.h
"
11
#include "
LArCabling/LArOnOffIdMapping.h
"
12
#include "GaudiKernel/ServiceHandle.h"
13
#include "GaudiKernel/SystemOfUnits.h"
14
15
#include "
StoreGate/ReadCondHandleKey.h
"
16
#include "
LArRecConditions/LArCalibLineMapping.h
"
17
18
19
//Event classes
20
class
LArDigitContainer
;
21
class
LArCalibDigitContainer
;
22
class
LArAccumulatedDigitContainer
;
23
class
LArAccumulatedCalibDigitContainer
;
24
class
LArFebHeaderContainer
;
25
class
LArOnlineID
;
26
class
IROBDataProviderSvc
;
27
28
class
LArRawCalibDataReadingAlg
:
public
AthReentrantAlgorithm
{
29
public
:
30
LArRawCalibDataReadingAlg
(
const
std::string& name, ISvcLocator* pSvcLocator);
31
32
StatusCode
initialize
()
override
;
33
StatusCode
execute
(
const
EventContext& ctx)
const override
;
34
35
private
:
36
SG::ReadCondHandleKey<LArCalibLineMapping>
m_CLKey
{
this
,
"CalibLineKey"
,
"LArCalibLineMap"
,
"SG calib line key"
};
37
38
//Event output:
39
SG::WriteHandleKey<LArDigitContainer>
m_DigitKey
{
this
,
"LArDigitKey"
,
""
};
40
SG::WriteHandleKey<LArCalibDigitContainer>
m_calibDigitKey
{
this
,
"LArCalibDigitKey"
,
""
};
41
SG::WriteHandleKey<LArAccumulatedDigitContainer>
m_accDigitKey
{
this
,
"LArAccDigitKey"
,
""
};
42
SG::WriteHandleKey<LArAccumulatedCalibDigitContainer>
m_accCalibDigitKey
{
this
,
"LArAccCalibDigitKey"
,
""
};
43
SG::WriteHandleKey<LArFebHeaderContainer>
m_febHeaderKey
{
this
,
"LArFebHeaderKey"
,
""
};
44
45
//Service providing the input data
46
ServiceHandle<IROBDataProviderSvc>
m_robDataProviderSvc
{
this
,
"ROBDataProviderSvc"
,
"ROBDataProviderSvc"
};
47
48
//Other properties:
49
BooleanProperty
m_verifyChecksum
{
this
,
"VerifyChecksum"
,
true
,
"Calculate and compare checksums to detect data transmission errors"
};
50
BooleanProperty
m_failOnCorruption
{
this
,
"FailOnCorruption"
,
true
,
"Return FAILURE if data corruption is found"
};
51
52
Gaudi::Property<std::string>
m_subCaloPreselection
{
this
,
"SubCaloPreselection"
,
""
,
"One of 'EM', 'HEC' or 'FCAL'"
};
53
54
Gaudi::Property<std::vector<unsigned> >
m_vBEPreselection
{
this
,
"BEPreselection"
,{},
"For channel-selection: Barrel=0, Endcap=1"
};
55
Gaudi::Property<std::vector<unsigned> >
m_vPosNegPreselection
{
this
,
"PosNegPreselection"
,{},
"For channel-selection: C-Side:0, A-Side: 1"
};
56
Gaudi::Property<std::vector<unsigned> >
m_vFTPreselection
{
this
,
"FTNumPreselection"
,{},
"For channel-selection: Feedthrough numbers (e.g. 0 - 31 for barrel)"
};
57
DoubleProperty
m_delayScale
{
this
,
"DelayScale"
,(25./240.)*Gaudi::Units::nanosecond,
"One calibration step in time"
};
58
59
std::set<HWIdentifier>
m_vFinalPreselection
;
60
61
//Identifier helper
62
const
LArOnlineID
*
m_onlineId
=
nullptr
;
63
64
//Switches set in initialize() based of SG keys of output object
65
bool
m_doDigits
=
false
;
66
bool
m_doCalibDigits
=
false
;
67
bool
m_doAccDigits
=
false
;
68
bool
m_doAccCalibDigits
=
false
;
69
bool
m_doFebHeaders
=
false
;
70
71
};
72
73
#endif
AthReentrantAlgorithm.h
LArCalibLineMapping.h
LArOnOffIdMapping.h
ReadCondHandleKey.h
ReadCondHandle.h
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
LArAccumulatedCalibDigitContainer
Container class for LArAccumulatedCalibDigit.
Definition
LArAccumulatedCalibDigitContainer.h:25
LArAccumulatedDigitContainer
Container class for LArAccumulatedDigit.
Definition
LArAccumulatedDigitContainer.h:22
LArCalibDigitContainer
Container class for LArCalibDigit.
Definition
LArCalibDigitContainer.h:19
LArDigitContainer
Container class for LArDigit.
Definition
LArDigitContainer.h:24
LArFebHeaderContainer
Container class for LArFebHeader.
Definition
LArFebHeaderContainer.h:20
LArOnlineID
Definition
LArOnlineID.h:21
LArRawCalibDataReadingAlg::m_accCalibDigitKey
SG::WriteHandleKey< LArAccumulatedCalibDigitContainer > m_accCalibDigitKey
Definition
LArRawCalibDataReadingAlg.h:42
LArRawCalibDataReadingAlg::m_doAccDigits
bool m_doAccDigits
Definition
LArRawCalibDataReadingAlg.h:67
LArRawCalibDataReadingAlg::m_failOnCorruption
BooleanProperty m_failOnCorruption
Definition
LArRawCalibDataReadingAlg.h:50
LArRawCalibDataReadingAlg::m_verifyChecksum
BooleanProperty m_verifyChecksum
Definition
LArRawCalibDataReadingAlg.h:49
LArRawCalibDataReadingAlg::m_DigitKey
SG::WriteHandleKey< LArDigitContainer > m_DigitKey
Definition
LArRawCalibDataReadingAlg.h:39
LArRawCalibDataReadingAlg::m_robDataProviderSvc
ServiceHandle< IROBDataProviderSvc > m_robDataProviderSvc
Definition
LArRawCalibDataReadingAlg.h:46
LArRawCalibDataReadingAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition
LArRawCalibDataReadingAlg.cxx:169
LArRawCalibDataReadingAlg::m_CLKey
SG::ReadCondHandleKey< LArCalibLineMapping > m_CLKey
Definition
LArRawCalibDataReadingAlg.h:36
LArRawCalibDataReadingAlg::m_vFTPreselection
Gaudi::Property< std::vector< unsigned > > m_vFTPreselection
Definition
LArRawCalibDataReadingAlg.h:56
LArRawCalibDataReadingAlg::m_doAccCalibDigits
bool m_doAccCalibDigits
Definition
LArRawCalibDataReadingAlg.h:68
LArRawCalibDataReadingAlg::m_accDigitKey
SG::WriteHandleKey< LArAccumulatedDigitContainer > m_accDigitKey
Definition
LArRawCalibDataReadingAlg.h:41
LArRawCalibDataReadingAlg::m_delayScale
DoubleProperty m_delayScale
Definition
LArRawCalibDataReadingAlg.h:57
LArRawCalibDataReadingAlg::initialize
StatusCode initialize() override
Definition
LArRawCalibDataReadingAlg.cxx:26
LArRawCalibDataReadingAlg::m_doCalibDigits
bool m_doCalibDigits
Definition
LArRawCalibDataReadingAlg.h:66
LArRawCalibDataReadingAlg::LArRawCalibDataReadingAlg
LArRawCalibDataReadingAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition
LArRawCalibDataReadingAlg.cxx:23
LArRawCalibDataReadingAlg::m_febHeaderKey
SG::WriteHandleKey< LArFebHeaderContainer > m_febHeaderKey
Definition
LArRawCalibDataReadingAlg.h:43
LArRawCalibDataReadingAlg::m_vPosNegPreselection
Gaudi::Property< std::vector< unsigned > > m_vPosNegPreselection
Definition
LArRawCalibDataReadingAlg.h:55
LArRawCalibDataReadingAlg::m_subCaloPreselection
Gaudi::Property< std::string > m_subCaloPreselection
Definition
LArRawCalibDataReadingAlg.h:52
LArRawCalibDataReadingAlg::m_vBEPreselection
Gaudi::Property< std::vector< unsigned > > m_vBEPreselection
Definition
LArRawCalibDataReadingAlg.h:54
LArRawCalibDataReadingAlg::m_doFebHeaders
bool m_doFebHeaders
Definition
LArRawCalibDataReadingAlg.h:69
LArRawCalibDataReadingAlg::m_doDigits
bool m_doDigits
Definition
LArRawCalibDataReadingAlg.h:65
LArRawCalibDataReadingAlg::m_onlineId
const LArOnlineID * m_onlineId
Definition
LArRawCalibDataReadingAlg.h:62
LArRawCalibDataReadingAlg::m_vFinalPreselection
std::set< HWIdentifier > m_vFinalPreselection
Definition
LArRawCalibDataReadingAlg.h:59
LArRawCalibDataReadingAlg::m_calibDigitKey
SG::WriteHandleKey< LArCalibDigitContainer > m_calibDigitKey
Definition
LArRawCalibDataReadingAlg.h:40
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
Generated on
for ATLAS Offline Software by
1.17.0