ATLAS Offline Software
TgcDigitToTgcRDO.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 TGCDIGITTOTGCRDO_H
6 #define TGCDIGITTOTGCRDO_H
7 
9 #include "GaudiKernel/ServiceHandle.h"
12 #include "MuonRDO/TgcRdo.h"
14 #include "StoreGate/DataHandle.h"
16 
18 
20 public:
21  TgcDigitToTgcRDO(const std::string& name, ISvcLocator* pSvcLocator);
22  virtual ~TgcDigitToTgcRDO() = default;
23  virtual StatusCode initialize() override final;
24  virtual StatusCode execute(const EventContext& ctx) const override final;
25 
26 private:
28 
29  // NOTE: although this function has no clients in release 22, currently the Run2 trigger simulation is still run in
30  // release 21 on RDOs produced in release 22. Since release 21 accesses the TagInfo, it needs to be written to the
31  // RDOs produced in release 22. The fillTagInfo() function thus needs to stay in release 22 until the workflow changes
33 
34  static uint16_t getRdoId(const TgcRawData& rawData);
35 
36  BooleanProperty m_isNewTgcDigit{this, "isNewTgcDigit", true}; // to select new TgcDigit (bcTag added)
37 
38 protected:
39  ServiceHandle<MuonTGC_CablingSvc> m_cabling{this, "CablingSvc", "MuonTGC_CablingSvc"};
40 
41  SG::WriteHandleKey<TgcRdoContainer> m_rdoContainerKey{this, "OutputObjectName", "TGCRDO", "WriteHandleKey for Output TgcRdoContainer"};
42  SG::ReadHandleKey<TgcDigitContainer> m_digitContainerKey{this, "InputObjectName", "TGC_DIGITS",
43  "ReadHandleKey for Input TgcDigitContainer"};
44  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
45 
46  std::string m_cablingType;
47 };
48 
49 #endif
MuonTGC_CablingSvc.h
TgcDigitToTgcRDO::m_cabling
ServiceHandle< MuonTGC_CablingSvc > m_cabling
Definition: TgcDigitToTgcRDO.h:39
TgcDigitToTgcRDO::m_digitContainerKey
SG::ReadHandleKey< TgcDigitContainer > m_digitContainerKey
Definition: TgcDigitToTgcRDO.h:42
TgcDigitToTgcRDO::m_rdoContainerKey
SG::WriteHandleKey< TgcRdoContainer > m_rdoContainerKey
Definition: TgcDigitToTgcRDO.h:41
TgcDigitToTgcRDO::initialize
virtual StatusCode initialize() override final
Definition: TgcDigitToTgcRDO.cxx:26
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey< TgcDigitContainer >
TgcDigitToTgcRDO::m_cablingType
std::string m_cablingType
Definition: TgcDigitToTgcRDO.h:46
DataHandle.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
SG::WriteHandleKey< TgcRdoContainer >
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
TgcDigitToTgcRDO::fillTagInfo
StatusCode fillTagInfo() const
Definition: TgcDigitToTgcRDO.cxx:140
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TgcRdoContainer.h
TgcRdo.h
TgcDigitToTgcRDO::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: TgcDigitToTgcRDO.h:44
AthReentrantAlgorithm.h
TgcDigitToTgcRDO::m_isNewTgcDigit
BooleanProperty m_isNewTgcDigit
Definition: TgcDigitToTgcRDO.h:36
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
TgcDigitToTgcRDO
Definition: TgcDigitToTgcRDO.h:19
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
TgcDigitToTgcRDO::getRdoId
static uint16_t getRdoId(const TgcRawData &rawData)
TgcDigitToTgcRDO::~TgcDigitToTgcRDO
virtual ~TgcDigitToTgcRDO()=default
TgcRawData
An unit object of TGC ROD output.
Definition: TgcRawData.h:23
TgcDigitToTgcRDO::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: TgcDigitToTgcRDO.cxx:45
TgcDigitToTgcRDO::getCabling
StatusCode getCabling()
Definition: TgcDigitToTgcRDO.cxx:156
TgcDigitContainer.h
TgcDigitToTgcRDO::TgcDigitToTgcRDO
TgcDigitToTgcRDO(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TgcDigitToTgcRDO.cxx:21
IMuonIdHelperSvc.h
ServiceHandle< MuonTGC_CablingSvc >