ATLAS Offline Software
LArRawDataReadingAlg.h
Go to the documentation of this file.
1 //Dear emacs, this is -*-c++-*-
2 /*
3  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
4 */
5 
6 #ifndef LARBYTESTREAM_LARRAWDATAREADINDINGALG_H
7 #define LARBYTESTREAM_LARRAWDATAREADINDINGALG_H
8 
10 #include "StoreGate/WriteHandle.h"
13 #include "GaudiKernel/ServiceHandle.h"
14 
17 
18 //Event classes
20 class LArDigitContainer;
22 class LArOnlineID;
24 
26  public:
27  LArRawDataReadingAlg(const std::string& name, ISvcLocator* pSvcLocator);
28 
29  StatusCode initialize() override;
30  StatusCode execute(const EventContext& ctx) const override;
31 
32  private:
33  //Event output:
34  SG::WriteHandleKey<LArRawChannelContainer> m_rawChannelKey{this,"LArRawChannelKey","LArRawChannels",
35  "SG key of the LArRawChannelContainer"};
37  SG::WriteHandleKey<LArFebHeaderContainer> m_febHeaderKey{this,"LArFebHeaderKey","LArFebHeader"};
38 
39  SG::ReadHandleKey<xAOD::EventInfo> m_eventInfoKey{this, "eventInfoKey", "EventInfo", "Key for EventInfo object"};
40 
41  //Service providing the input data
42  ServiceHandle<IROBDataProviderSvc> m_robDataProviderSvc{this,"ROBDataProviderSvc","ROBDataProviderSvc"};
43 
44  //Other properties:
45  BooleanProperty m_verifyChecksum{this,"VerifyChecksum",true,"Calculate and compare checksums to detect data transmission errors"};
46  BooleanProperty m_failOnCorruption{this,"FailOnCorruption",false,"Return FAILURE if data corruption is found"};
47 
48  //Identifier helper
49  const LArOnlineID* m_onlineId=nullptr;
50 
51  //Switches set in initialize() based of SG keys of output object
52  bool m_doRawChannels=true;
53  bool m_doDigits=true;
54  bool m_doFebHeaders=true;
55 
56 };
57 
58 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
LArRawDataReadingAlg::m_rawChannelKey
SG::WriteHandleKey< LArRawChannelContainer > m_rawChannelKey
Definition: LArRawDataReadingAlg.h:34
LArRawDataReadingAlg::m_doFebHeaders
bool m_doFebHeaders
Definition: LArRawDataReadingAlg.h:54
SG::ReadHandleKey< xAOD::EventInfo >
LArRawDataReadingAlg::m_febHeaderKey
SG::WriteHandleKey< LArFebHeaderContainer > m_febHeaderKey
Definition: LArRawDataReadingAlg.h:37
ReadCondHandle.h
LArRawDataReadingAlg::m_digitKey
SG::WriteHandleKey< LArDigitContainer > m_digitKey
Definition: LArRawDataReadingAlg.h:36
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
LArRawDataReadingAlg::m_doDigits
bool m_doDigits
Definition: LArRawDataReadingAlg.h:53
WriteHandle.h
Handle class for recording to StoreGate.
IROBDataProviderSvc
Interface class for managing ROB for both online and offline.
Definition: IROBDataProviderSvc.h:25
LArRawDataReadingAlg::m_verifyChecksum
BooleanProperty m_verifyChecksum
Definition: LArRawDataReadingAlg.h:45
LArRawDataReadingAlg
Definition: LArRawDataReadingAlg.h:25
LArOnOffIdMapping.h
SG::WriteHandleKey< LArRawChannelContainer >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArRawDataReadingAlg::LArRawDataReadingAlg
LArRawDataReadingAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: LArRawDataReadingAlg.cxx:23
LArRawDataReadingAlg::m_doRawChannels
bool m_doRawChannels
Definition: LArRawDataReadingAlg.h:52
AthReentrantAlgorithm.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
LArOnlineID
Definition: LArOnlineID.h:20
EventInfo.h
LArRawDataReadingAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition: LArRawDataReadingAlg.cxx:43
LArRawDataReadingAlg::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: LArRawDataReadingAlg.h:39
LArRawDataReadingAlg::m_onlineId
const LArOnlineID * m_onlineId
Definition: LArRawDataReadingAlg.h:49
LArRawDataReadingAlg::initialize
StatusCode initialize() override
Definition: LArRawDataReadingAlg.cxx:26
LArDigitContainer
Container class for LArDigit.
Definition: LArDigitContainer.h:24
LArFebHeaderContainer
Container class for LArFebHeader.
Definition: LArFebHeaderContainer.h:20
LArRawDataReadingAlg::m_failOnCorruption
BooleanProperty m_failOnCorruption
Definition: LArRawDataReadingAlg.h:46
LArRawDataReadingAlg::m_robDataProviderSvc
ServiceHandle< IROBDataProviderSvc > m_robDataProviderSvc
Definition: LArRawDataReadingAlg.h:42
LArRawChannelContainer
Container for LArRawChannel (IDC using LArRawChannelCollection)
Definition: LArRawChannelContainer.h:26
ServiceHandle< IROBDataProviderSvc >