ATLAS Offline Software
Loading...
Searching...
No Matches
TRTRawDataProviderTool.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 TRT_RAWDATABYTESTREAMCNV_TRTRAWDATAPROVIDERTOOL_H
6#define TRT_RAWDATABYTESTREAMCNV_TRTRAWDATAPROVIDERTOOL_H
7
9
11
16
17#include "GaudiKernel/EventContext.h"
18#include "GaudiKernel/ServiceHandle.h"
19#include "GaudiKernel/ToolHandle.h"
20
21#include <set>
22#include <string>
23
24// the tool to decode a ROB frament
25
26class TRT_BSErrorContainer;
27
28class TRTRawDataProviderTool : public extends<AthAlgTool, ITRTRawDataProviderTool>
29{
30 public:
32 TRTRawDataProviderTool( const std::string& type, const std::string& name,
33 const IInterface* parent ) ;
34
36 virtual StatusCode initialize() override;
37
39 virtual StatusCode convert(const std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecRobs,
40 TRT_RDO_Container* rdoIdc,
41 TRT_BSErrContainer* bsErrCont,
42 DataPool<TRT_LoLumRawData>* dataItemsPool,
43 const EventContext& ctx
44 ) const override;
45
46private:
47 ToolHandle<ITRT_RodDecoder> m_decoder;
48
49 SG::WriteHandleKey<InDetTimeCollection> m_lvl1idkey{this,"LVL1IDKey","TRT_LVL1ID","TRT_LVL1ID out-key"};
50 SG::WriteHandleKey<InDetTimeCollection> m_bcidkey{this,"BCIDKey","TRT_BCID","TRT_BCID out-key"};
51 Gaudi::Property<bool> m_storeInDetTimeColls{this, "StoreInDetTimeCollections", true, "Store LVL1ID and BCID"};
52};
53
54#endif
55
56
57
Maintain a set of objects, one per slot.
Property holding a SG store/key/clid from which a WriteHandle is made.
InDetRawDataContainer< InDetRawDataCollection< TRT_RDORawData > > TRT_RDO_Container
a typed memory pool that saves time spent allocation small object.
Definition DataPool.h:63
Property holding a SG store/key/clid from which a WriteHandle is made.
ToolHandle< ITRT_RodDecoder > m_decoder
TRTRawDataProviderTool(const std::string &type, const std::string &name, const IInterface *parent)
constructor
virtual StatusCode initialize() override
initialize
SG::WriteHandleKey< InDetTimeCollection > m_lvl1idkey
virtual StatusCode convert(const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, TRT_RDO_Container *rdoIdc, TRT_BSErrContainer *bsErrCont, DataPool< TRT_LoLumRawData > *dataItemsPool, const EventContext &ctx) const override
this is the main decoding method
SG::WriteHandleKey< InDetTimeCollection > m_bcidkey
Gaudi::Property< bool > m_storeInDetTimeColls