7#include "GaudiKernel/MsgStream.h"
8#include "GaudiKernel/StatusCode.h"
26 std::vector<std::bitset<64>> tobBits(4);
27 for (
int i = 0; i < 4; ++i) {
28 tobBits[i] = std::bitset<64>(input.m_I_PU1TobData[i]);
33 if (runOK.isFailure()) {
34 msg << MSG::WARNING <<
"runPU1Suppression: runSimulation failed" <<
endmsg;
35 return StatusCode::FAILURE;
39 output.m_outputTobs.clear();
44 if (remadeHex.empty()) {
46 <<
"runPU1Suppression: issue with input TOB - pushing back input TOB"
49 ss << std::hex << std::setfill(
'0');
50 for (
int i = 0; i < 4; ++i) {
51 ss << std::setw(16) << input.m_I_PU1TobData[i];
53 output.m_outputTobs.push_back(
ss.str());
54 return StatusCode::SUCCESS;
57 output.m_outputTobs.push_back(std::move(remadeHex));
58 return StatusCode::SUCCESS;
Defines the data structure for PU1 Suppression algorithm inputs.
Defines the output structure for PU1 suppression results.
Interface for the PU1 suppression algorithm logic.
AlgTool that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
std::string remakeFullNumberToHex(const std::vector< std::bitset< 64 > > &number, MsgStream &msg)
Converts a vector of 4x 64-bit TOBs to a 64-character hex string.
const std::vector< std::vector< et_type > > MED_LUT
StatusCode runSimulation(std::vector< std::bitset< 64 > > &entry, const std::vector< std::vector< et_type > > &lut, rho_type rho_data, MsgStream &msg)
Applies LUT-based suppression logic to a vector of TOBs.
Data structure representing a single PU1 suppression input.
Output data structure for PU1 suppression.