11#include "pflib/Target.h"
12#include "pflib/logging/Logging.h"
13#include "pflib/packing/MultiSampleECONDEventPacket.h"
20 virtual void start_run() {}
21 virtual void end_run() {}
Abstract base class for consuming event packets.
Definition daq_run.h:18
Consume an event packet, decode it, and save to buffer.
Definition daq_run.h:132
virtual void write_event(const pflib::packing::MultiSampleECONDEventPacket &ep) override
Save to buffer.
Definition daq_run.cxx:138
std::vector< pflib::packing::MultiSampleECONDEventPacket > ep_buffer_
Buffer for event packets.
Definition daq_run.h:150
DecodeAndBuffer(std::size_t nevents, int n_links)
define number of events to buffer and number of links enabled
Definition daq_run.cxx:133
void set_buffer_size(std::size_t nevents)
Set the buffer size.
Definition daq_run.cxx:155
virtual void start_run() override
Check that the buffer was read and flushed since last run.
Definition daq_run.cxx:148
const std::vector< pflib::packing::MultiSampleECONDEventPacket > & get_buffer() const
get buffer
Definition daq_run.cxx:151
specializatin of DecodeAndWrite that holds a std::ofstream for the user with functions for writing th...
Definition daq_run.h:91
std::ofstream file_
output file writing to
Definition daq_run.h:93
virtual void write_event(const pflib::packing::MultiSampleECONDEventPacket &ep) final
call write_event with our file handle
Definition daq_run.cxx:113
std::function< void(std::ofstream &, const pflib::packing::MultiSampleECONDEventPacket &)> write_event_
function that writes row(s) to csv given an event
Definition daq_run.h:97
Consume an event packet, decode it, and then do something else.
Definition daq_run.h:58
DecodeAndWrite(int n_links)
Definition daq_run.cxx:65
virtual void write_event(const pflib::packing::MultiSampleECONDEventPacket &ep)=0
pure virtual function for writing out decoded event
virtual void consume(std::vector< uint32_t > &event) final
Decode the input event packet into our pflib::packing::MultiSampleECONDEventPacket and then call writ...
Definition daq_run.cxx:83
mutable::pflib::logging::logger the_log_
logging for warning messages on empty events
Definition daq_run.h:80
pflib::packing::MultiSampleECONDEventPacket ep_
event packet for decoding
Definition daq_run.h:84
just copy input event packets to the output file as binary
Definition daq_run.h:41
encapulating a given setup's access rules
Definition Target.h:24
Unpack an event that has potentially more than one sample collected from a single ECOND.
Definition MultiSampleECONDEventPacket.h:19