ATLAS Offline Software
Loading...
Searching...
No Matches
ITkStripRawDataProviderTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ITKSTRIPSBYTETREAMCNV_ITKSTRIPRAWDATAPROVIDERTOOL_H
6#define ITKSTRIPSBYTETREAMCNV_ITKSTRIPRAWDATAPROVIDERTOOL_H
7
10
11#include "GaudiKernel/ToolHandle.h"
12
13#include <atomic>
14
15
17
27class ITkStripRawDataProviderTool : public extends<AthAlgTool, IITkStripRawDataProviderTool>
28{
29 public:
30
31 using base_class::base_class;
32
34 virtual ~ITkStripRawDataProviderTool() = default;
35
37 virtual StatusCode initialize() override;
38
49 virtual StatusCode convert(std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecROBFrags,
50 SCT_RDO_Container& rdoIDCont,
52 DataPool<SCT3_RawData>* dataItemsPool,
53 const EventContext& ctx) const override;
54
55 private:
56
58 ToolHandle<IITkStripsRodDecoder> m_decoder{this, "Decoder", "ITkStripsRodDecoder", "Decoder"};
59
62 mutable std::atomic_int m_decodeErrCount{0};
63
64};
65
66#endif // ITKSTRIPSBYTETREAMCNV_ITKSTRIPRAWDATAPROVIDERTOOL_H
InDetRawDataContainer< InDetRawDataCollection< SCT_RDORawData > > SCT_RDO_Container
a typed memory pool that saves time spent allocation small object.
Definition DataPool.h:63
IDC like storage for BS errors, TODO, customise implementation further so that we store int rather th...
Athena Algorithm Tool to fill Collections of ITk Strips RDO Containers.
std::atomic_int m_decodeErrCount
Number of decode errors encountered in decoding.
virtual StatusCode convert(std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecROBFrags, SCT_RDO_Container &rdoIDCont, IDCInDetBSErrContainer &errs, DataPool< SCT3_RawData > *dataItemsPool, const EventContext &ctx) const override
Main decoding method.
virtual StatusCode initialize() override
Initialize.
ToolHandle< IITkStripsRodDecoder > m_decoder
Algorithm Tool to decode ROD byte stream into RDO.
virtual ~ITkStripRawDataProviderTool()=default
Destructor.