ATLAS Offline Software
Loading...
Searching...
No Matches
SCTRawDataProviderTool.h
Go to the documentation of this file.
1// -*- C++ -*-
2
3/*
4 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef SCT_RAWDATABYTESTREAMCNV_SCTRAWDATAPROVIDERTOOL_H
8#define SCT_RAWDATABYTESTREAMCNV_SCTRAWDATAPROVIDERTOOL_H
9
12
13#include "GaudiKernel/ToolHandle.h"
14
15#include <atomic>
16
17
18class ISCT_RodDecoder;
19
29class SCTRawDataProviderTool : public extends<AthAlgTool, ISCTRawDataProviderTool>
30{
31 public:
32
34 SCTRawDataProviderTool(const std::string& type, const std::string& name, const IInterface* parent);
35
37 virtual ~SCTRawDataProviderTool() = default;
38
40 virtual StatusCode initialize() override;
41
52 virtual StatusCode convert(std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecROBFrags,
53 SCT_RDO_Container& rdoIDCont,
55 DataPool<SCT3_RawData>* dataItemsPool,
56 const EventContext& ctx) const override;
57
58 private:
59
61 ToolHandle<ISCT_RodDecoder> m_decoder{this, "Decoder", "SCT_RodDecoder", "Decoder"};
62
65 mutable std::atomic_int m_decodeErrCount{0};
66
67};
68
69#endif // SCT_RAWDATABYTESTREAMCNV_SCTRAWDATAPROVIDERTOOL_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...
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 ~SCTRawDataProviderTool()=default
Destructor.
virtual StatusCode initialize() override
Initialize.
SCTRawDataProviderTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
ToolHandle< ISCT_RodDecoder > m_decoder
Algorithm Tool to decode ROD byte stream into RDO.