12#ifndef JFEXROIBYTESTREAMTOOL_H
13#define JFEXROIBYTESTREAMTOOL_H
40#include "Gaudi/Property.h"
53 virtual StatusCode
start()
override;
57 virtual StatusCode
convertFromBS(
const std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vrobf,
const EventContext& eventContext)
const override;
60 virtual StatusCode
convertToBS(std::vector<OFFLINE_FRAGMENTS_NAMESPACE_WRITE::ROBFragment*>& vrobf,
const EventContext& eventContext)
override;
63 virtual const std::vector<uint32_t>&
robIds()
const override {
69 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
"Monitoring tool"};
75 Gaudi::Property<std::vector<uint32_t>>
m_robIds {
this,
"ROBIDs", {},
"List of ROB IDs required for conversion to/from xAOD RoI"};
76 Gaudi::Property<bool>
m_convertExtendedTOBs {
this,
"ConvertExtendedTOBs",
false,
"Convert xTOBs instead of TOBs"};
78 Gaudi::Property<std::string>
m_TobMapping {
this,
"jFexTobMapping",
"L1CaloFEXByteStream/2022-10-19/jFexTobMap.txt",
"Text file to convert from hardware internal coordinates to eta-phi location"};
102 std::array<uint32_t,4>
jFEXtoRODTrailer (uint32_t word0, uint32_t word1)
const;
103 std::array<uint32_t,1>
RODTrailer (uint32_t word0, uint32_t word1)
const;
109 std::array<float,2>
getEtaPhi (
unsigned int jfex,
unsigned int fpga, uint32_t word,
const char* obj)
const;
129 constexpr static unsigned int mapIndex(
unsigned int jfex,
unsigned int fpga,
unsigned int iEta,
unsigned int iPhi);
132 void printError(
const std::string& location,
const std::string& title, MSG::Level
type,
const std::string&
detail)
const;
Header file to be included by clients of the Monitored infrastructure.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.