ATLAS Offline Software
Loading...
Searching...
No Matches
BCM_RawDataProviderTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef BCM_RAWDATABYTESTREAMCNV_BCM_RAWDATAPROVIDERTOOL_H
6#define BCM_RAWDATABYTESTREAMCNV_BCM_RAWDATAPROVIDERTOOL_H
7
9#include "GaudiKernel/ToolHandle.h"
11#include "BCM_RodDecoder.h"
12#include <inttypes.h>
13#include <atomic>
14
15// the tool to decode a ROB fragment
16
18{
19
20 public:
21
23 static const InterfaceID& interfaceID();
24
27
30
32 virtual StatusCode initialize() override;
33
35 virtual StatusCode finalize() override;
36
38 StatusCode convert(std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecRobs, BCM_RDO_Container* rdoCont) const;
39
40private:
41 mutable std::atomic<unsigned> m_decodeErrCount{0};
42 ToolHandle<BCM_RodDecoder> m_decoder{this,"Decoder","BCM_RodDecoder"};
43};
44
45#endif
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
delegate constructor
ToolHandle< BCM_RodDecoder > m_decoder
std::atomic< unsigned > m_decodeErrCount
virtual StatusCode initialize() override
initialize
virtual ~BCM_RawDataProviderTool()
destructor
static const InterfaceID & interfaceID()
AthAlgTool InterfaceID.
StatusCode convert(std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, BCM_RDO_Container *rdoCont) const
this is the main decoding method
virtual StatusCode finalize() override
finalize