ATLAS Offline Software
AFP_ByteStream2RawCnv.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef AFP_BYTESTREAM2RAWCNV_H
6 #define AFP_BYTESTREAM2RAWCNV_H
7 
8 #include <stdint.h>
9 
10 #include <string>
11 
13 #include "GaudiKernel/ServiceHandle.h"
14 #include "GaudiKernel/ToolHandle.h"
15 
16 #include "GaudiKernel/IToolSvc.h"
17 #include "GaudiKernel/MsgStream.h"
18 
22 
25 
26 #include "AFP_WordReadOut.h"
27 
29 public:
30  AFP_ByteStream2RawCnv(const std::string &type, const std::string &name,
31  const IInterface *parent);
32 
33  static const InterfaceID &interfaceID();
34 
36  virtual ~AFP_ByteStream2RawCnv();
37 
38  virtual StatusCode initialize();
39  virtual StatusCode finalize();
40 
43 
45  bool isLinkToF (const unsigned int link) const {return ( (link == 12) || (link == 13));}
46 
48  bool isLinkSi (const unsigned int link) const {return ( (link <= 3) || ( (link >= 8) && (link <= 11) ) );}
49 
56  AFP_SiRawCollection* getCollectionSi(//const unsigned int link, const unsigned int robId,
57  AFP_RawContainer *container) const;
58 
65  AFP_ToFRawCollection* getCollectionToF(//const unsigned int link, const unsigned int robId,
66  AFP_RawContainer *container) const;
67 
69  void setDataHeader (uint32_t the_word, AFP_RawDataCommonHead* dataHead) const;
70 
71 private:
73 
74  ToolHandle<AFP_WordReadOut> m_wordReadout {this, "AFP_WordReadOut", "AFP_WordReadOut", "Tool that reads word"};
75 
76  static const uint32_t s_siNoHitMarker = 15;
77 
78 
79 };
80 
81 #endif //> !DECODER_AFP_DECODER_H
AFP_ByteStream2RawCnv::~AFP_ByteStream2RawCnv
virtual ~AFP_ByteStream2RawCnv()
Does nothing.
Definition: AFP_ByteStream2RawCnv.cxx:32
AFP_ByteStream2RawCnv::isLinkSi
bool isLinkSi(const unsigned int link) const
returns true if provided link corresponds to silicon detector information
Definition: AFP_ByteStream2RawCnv.h:48
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
AFP_ByteStream2RawCnv
Definition: AFP_ByteStream2RawCnv.h:28
AFP_RawContainer.h
IByteStreamEventAccess.h
AFP_RawDataCommonHead.h
AFP_ByteStream2RawCnv::m_wordReadout
ToolHandle< AFP_WordReadOut > m_wordReadout
Definition: AFP_ByteStream2RawCnv.h:74
AFP_ByteStream2RawCnv::getCollectionToF
AFP_ToFRawCollection * getCollectionToF(AFP_RawContainer *container) const
Adds new time-of-flight collection to AFP_RawContainer.
Definition: AFP_ByteStream2RawCnv.cxx:380
AFP_ByteStream2RawCnv::fillCollection
StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, AFP_RawContainer *rawContainer) const
Fills rawContainer with collections from ROBFragment.
Definition: AFP_ByteStream2RawCnv.cxx:69
AFP_ByteStream2RawCnv::isLinkToF
bool isLinkToF(const unsigned int link) const
returns true if provided link corresponds to time-of-flight information
Definition: AFP_ByteStream2RawCnv.h:45
AFP_ByteStream2RawCnv::s_siNoHitMarker
static const uint32_t s_siNoHitMarker
Definition: AFP_ByteStream2RawCnv.h:76
AFP_RawContainer
Definition: AFP_RawContainer.h:13
AFP_RawCollection
Class representing collection of silicon detector data.
Definition: AFP_RawCollection.h:14
AFP_ByteStream2RawCnv::finalize
virtual StatusCode finalize()
Definition: AFP_ByteStream2RawCnv.cxx:63
eformat::ROBFragment
Definition: L1CaloBsDecoderUtil.h:12
RawEvent.h
AFP_ByteStream2RawCnv::getCollectionSi
AFP_SiRawCollection * getCollectionSi(AFP_RawContainer *container) const
Adds new silicon collection to AFP_RawContainer.
Definition: AFP_ByteStream2RawCnv.cxx:356
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
AFP_ByteStream2RawCnv::initialize
virtual StatusCode initialize()
Definition: AFP_ByteStream2RawCnv.cxx:34
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
AFP_ByteStream2RawCnv::setDataHeader
void setDataHeader(uint32_t the_word, AFP_RawDataCommonHead *dataHead) const
Sets data header information for given argument based on m_wordReadout.
Definition: AFP_ByteStream2RawCnv.cxx:403
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
AFP_ByteStream2RawCnv::interfaceID
static const InterfaceID & interfaceID()
Definition: AFP_ByteStream2RawCnv.cxx:18
AFP_RawDataCommonHead
Base class representing first 8 bits in a record in bytestream.
Definition: AFP_RawDataCommonHead.h:17
AFP_ByteStream2RawCnv::AFP_ByteStream2RawCnv
AFP_ByteStream2RawCnv(const std::string &type, const std::string &name, const IInterface *parent)
Definition: AFP_ByteStream2RawCnv.cxx:23
AthAlgTool
Definition: AthAlgTool.h:26
AFP_WordReadOut.h
AFP_ByteStream2RawCnv::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Definition: AFP_ByteStream2RawCnv.h:72
IROBDataProviderSvc.h
ServiceHandle< IROBDataProviderSvc >