pflib v3.12.0-1-g716e801
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
TriggerLinkFrame.h
1#pragma once
2
3#include <cstdint>
4#include <span>
5
6#include "pflib/logging/Logging.h"
7
8namespace pflib::packing {
9
44 static uint32_t compressed_to_linearized(uint8_t cs);
45
47 static const int i_soi_ = 1;
48
50 int i_link;
51
59
72
80 uint8_t compressed_sum(int i_sum, int i_bx = 0) const;
81
94 uint32_t linearized_sum(int i_sum, int i_bx = 0) const;
95
99 void from(std::span<uint32_t> data);
100
109 TriggerLinkFrame(std::span<uint32_t> data);
110
112 TriggerLinkFrame() = default;
113
116};
117
118} // namespace pflib::packing
boost::log::sources::severity_channel_logger_mt< level, std::string > logger
our logger type
Definition Logging.h:39
logger get(const std::string &name)
Gets a logger with the input name for its channel.
Definition Logging.cxx:24
Without a trigger link set up, the decoding cannot be fuctionally tested.
Definition TriggerLinkFrame.h:18
std::array< uint32_t, 4 > data_words
Trigger words including one pre-sample and 2 following samples.
Definition TriggerLinkFrame.h:58
static uint32_t compressed_to_linearized(uint8_t cs)
Convert a compressed trigger sum into its linearized equivalent.
Definition TriggerLinkFrame.cxx:10
TriggerLinkFrame()=default
default constructor which does nothing
uint32_t linearized_sum(int i_sum, int i_bx=0) const
Get a specific linearized trigger sum from the data words.
Definition TriggerLinkFrame.cxx:60
std::array< bool, 5 > corruption
Checks on data format.
Definition TriggerLinkFrame.h:71
static const int i_soi_
index of data words containg sample of interest
Definition TriggerLinkFrame.h:47
logging::logger the_log_
handle to logging for decoding warnings
Definition TriggerLinkFrame.h:115
uint8_t compressed_sum(int i_sum, int i_bx=0) const
Get a specific compressed trigger sum from the data words.
Definition TriggerLinkFrame.cxx:45
int i_link
trigger link identification number
Definition TriggerLinkFrame.h:50
void from(std::span< uint32_t > data)
Parse into this link frame from a std::span over 32-bit words.
Definition TriggerLinkFrame.cxx:20