ATLAS Offline Software
Loading...
Searching...
No Matches
AFP_ByteStream2RawCnv.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 AFP_BYTESTREAM2RAWCNV_H
6#define AFP_BYTESTREAM2RAWCNV_H
7
8
9
11#include "GaudiKernel/ServiceHandle.h"
12#include "GaudiKernel/ToolHandle.h"
13
14#include "GaudiKernel/IToolSvc.h"
15#include "GaudiKernel/MsgStream.h"
16
18
19
22
23#include "AFP_WordReadOut.h"
24#include <stdint.h> //uint32_t etc
25#include <string>
26
28public:
29 AFP_ByteStream2RawCnv(const std::string &type, const std::string &name,
30 const IInterface *parent);
31
32 static const InterfaceID &interfaceID();
33
35 virtual ~AFP_ByteStream2RawCnv();
36
37 virtual StatusCode initialize();
38 virtual StatusCode finalize();
39
41 StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, AFP_RawContainer *rawContainer) const;
42
44 bool isLinkToF (const unsigned int link) const {return ( (link == 12) || (link == 13));}
45
47 bool isLinkSi (const unsigned int link) const {return ( (link <= 3) || ( (link >= 8) && (link <= 11) ) );}
48
55 AFP_SiRawCollection* getCollectionSi(//const unsigned int link, const unsigned int robId,
57
64 AFP_ToFRawCollection* getCollectionToF(//const unsigned int link, const unsigned int robId,
66
68 void setDataHeader (uint32_t the_word, AFP_RawDataCommonHead* dataHead) const;
69
70private:
72
73 ToolHandle<AFP_WordReadOut> m_wordReadout {this, "AFP_WordReadOut", "AFP_WordReadOut", "Tool that reads word"};
74
75 static const uint32_t s_siNoHitMarker = 15;
76
77
78};
79
80#endif //> !DECODER_AFP_DECODER_H
AFP_RawCollection< AFP_SiRawData > AFP_SiRawCollection
Class representing collection of silicon detector data.
AFP_RawCollection< AFP_ToFRawData > AFP_ToFRawCollection
AFP_ToFRawCollection * getCollectionToF(AFP_RawContainer *container) const
Adds new time-of-flight collection to AFP_RawContainer.
static const uint32_t s_siNoHitMarker
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
ToolHandle< AFP_WordReadOut > m_wordReadout
void setDataHeader(uint32_t the_word, AFP_RawDataCommonHead *dataHead) const
Sets data header information for given argument based on m_wordReadout.
bool isLinkSi(const unsigned int link) const
returns true if provided link corresponds to silicon detector information
bool isLinkToF(const unsigned int link) const
returns true if provided link corresponds to time-of-flight information
virtual StatusCode finalize()
AFP_ByteStream2RawCnv(const std::string &type, const std::string &name, const IInterface *parent)
AFP_SiRawCollection * getCollectionSi(AFP_RawContainer *container) const
Adds new silicon collection to AFP_RawContainer.
virtual StatusCode initialize()
static const InterfaceID & interfaceID()
StatusCode fillCollection(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment *robFrag, AFP_RawContainer *rawContainer) const
Fills rawContainer with collections from ROBFragment.
virtual ~AFP_ByteStream2RawCnv()
Does nothing.
Base class representing first 8 bits in a record in bytestream.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
eformat::ROBFragment< PointerType > ROBFragment
Definition RawEvent.h:27