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,
62 const EventContext& eventContext)
override;
65 virtual const std::vector<uint32_t>&
robIds()
const override {
71 ToolHandle<GenericMonitoringTool>
m_monTool{
this,
"MonTool",
"",
"Monitoring tool"};
77 Gaudi::Property<std::vector<uint32_t>>
m_robIds {
this,
"ROBIDs", {},
"List of ROB IDs required for conversion to/from xAOD RoI"};
78 Gaudi::Property<bool>
m_convertExtendedTOBs {
this,
"ConvertExtendedTOBs",
false,
"Convert xTOBs instead of TOBs"};
80 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"};
97 std::array<uint32_t,4>
jFEXtoRODTrailer (uint32_t word0, uint32_t word1)
const;
98 std::array<uint32_t,1>
RODTrailer (uint32_t word0, uint32_t word1)
const;
103 uint32_t n_jEM, uint32_t has_jTE, uint32_t has_jXE)
const;
105 uint32_t n_xjTau, uint32_t n_xjEM)
const;
107 uint32_t jfex)
const;
112 std::array<float,2>
getEtaPhi (
unsigned int jfex,
unsigned int fpga, uint32_t word,
const char* obj)
const;
132 constexpr static unsigned int mapIndex(
unsigned int jfex,
unsigned int fpga,
unsigned int iEta,
unsigned int iPhi);
135 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.
TrigCompositeContainer_v1 TrigCompositeContainer
Declare the latest version of the container.