ATLAS Offline Software
ITkStripsRawContByteStreamTool.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 ITkStripsRawDataByteStreamCnv_ITkStripsRawContByteStreamTool_h
6 #define ITkStripsRawDataByteStreamCnv_ITkStripsRawContByteStreamTool_h
7 
10 
13 
14 #include "GaudiKernel/ToolHandle.h"
15 #include "GaudiKernel/ServiceHandle.h"
16 #include "SCT_Cabling/ISCT_CablingTool.h" //also valid for ITk Strips
17 
19 
20 class SCT_ID;
21 
32 class
33 ITkStripsRawContByteStreamTool : public extends<AthAlgTool, IITkStripsRawContByteStreamTool> {
34  public:
35 
37  ITkStripsRawContByteStreamTool(const std::string& type, const std::string& name, const IInterface* parent);
38 
40  virtual ~ITkStripsRawContByteStreamTool() = default;
41 
43  virtual StatusCode initialize() override;
44 
46  virtual StatusCode finalize() override;
47 
56  virtual StatusCode convert(const SCT_RDO_Container* itkRDOCont) const override;
57 
58  private:
60  { this, "ByteStreamCnvSvc", "ByteStreamCnvSvc" };
61 
63  ToolHandle<IITkStripsRodEncoder> m_encoder{this, "Encoder", "ITkStripsRodEncoder", "ITkStrips ROD Encoder for RDO to BS conversion"};
64 
66  ToolHandle<ISCT_CablingTool> m_cabling{this, "ITkStripsCablingTool", "SCT_CablingTool", "Tool to retrieve ITk Strips Cabling"};
67 
70  const SCT_ID* m_itkStripsIDHelper{nullptr};
71 
72  UnsignedShortProperty m_rodBlockVersion{this, "RodBlockVersion", 0};
73 };
74 
75 #endif
ITkStripsRawContByteStreamTool
Athena Algorithm Tool to provide conversion from ITkStrips RDO container to ByteStream.
Definition: ITkStripsRawContByteStreamTool.h:33
ITkStripsRawContByteStreamTool::m_itkStripsIDHelper
const SCT_ID * m_itkStripsIDHelper
Identifier helper class for the SCT subdetector that creates compact Identifier objects and Identifie...
Definition: ITkStripsRawContByteStreamTool.h:70
ITkStripsRawContByteStreamTool::m_cabling
ToolHandle< ISCT_CablingTool > m_cabling
Providing mappings of online and offline identifiers and also serial numbers.
Definition: ITkStripsRawContByteStreamTool.h:66
InDetRawDataContainer
Definition: InDetRawDataContainer.h:27
ITkStripsRawContByteStreamTool::initialize
virtual StatusCode initialize() override
Initialize.
Definition: ITkStripsRawContByteStreamTool.cxx:25
ITkStripsRawContByteStreamTool::m_encoder
ToolHandle< IITkStripsRodEncoder > m_encoder
Algorithm Tool to decode ROB bytestream data into RDO.
Definition: ITkStripsRawContByteStreamTool.h:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
ITkStripsRawContByteStreamTool::ITkStripsRawContByteStreamTool
ITkStripsRawContByteStreamTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Definition: ITkStripsRawContByteStreamTool.cxx:17
test_pyathena.parent
parent
Definition: test_pyathena.py:15
FullEventAssembler.h
ITkStripsRawContByteStreamTool::m_byteStreamCnvSvc
ServiceHandle< IByteStreamCnvSvc > m_byteStreamCnvSvc
Definition: ITkStripsRawContByteStreamTool.h:60
ITkStripsRawContByteStreamTool::m_rodBlockVersion
UnsignedShortProperty m_rodBlockVersion
Definition: ITkStripsRawContByteStreamTool.h:72
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
IITkStripsRodEncoder
Interface for Athena Algorithm Tool to convert from Strips RDO to ROD format BysteStream.
Definition: IITkStripsRodEncoder.h:30
ITkStripsRawContByteStreamTool::finalize
virtual StatusCode finalize() override
Finalize.
Definition: ITkStripsRawContByteStreamTool.cxx:38
IITkStripsRawContByteStreamTool.h
ITkStripsRawContByteStreamTool::~ITkStripsRawContByteStreamTool
virtual ~ITkStripsRawContByteStreamTool()=default
Destructor.
SCT_ID
Definition: SCT_ID.h:68
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ISCT_CablingTool.h
ITkStripsRawContByteStreamTool::convert
virtual StatusCode convert(const SCT_RDO_Container *itkRDOCont) const override
Main Convert method.
Definition: ITkStripsRawContByteStreamTool.cxx:45
IByteStreamCnvSvc.h
ServiceHandle< IByteStreamCnvSvc >