8#ifndef DATAHANDLINGLIBS_INCLUDE_DATAHANDLINGLIBS_CONCEPTS_RAWDATAPROCESSORCONCEPT_HPP_
9#define DATAHANDLINGLIBS_INCLUDE_DATAHANDLINGLIBS_CONCEPTS_RAWDATAPROCESSORCONCEPT_HPP_
16#include <nlohmann/json.hpp>
19namespace datahandlinglibs {
21template<
class ReadoutType>
37 virtual void start(
const nlohmann::json& args) = 0;
39 virtual void stop(
const nlohmann::json& args) = 0;
43 virtual void scrap(
const nlohmann::json& args) = 0;
virtual void scrap(const nlohmann::json &args)=0
Unconfigure.
RawDataProcessorConcept(RawDataProcessorConcept &&)=delete
RawDataProcessorConcept is not move-constructible.
virtual ~RawDataProcessorConcept()
virtual void conf(const appmodel::DataHandlerModule *conf)=0
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones.
virtual std::uint64_t get_last_daq_time()=0
Get newest timestamp of last seen packet.
RawDataProcessorConcept(const RawDataProcessorConcept &)=delete
RawDataProcessorConcept is not copy-constructible.
virtual void start(const nlohmann::json &args)=0
Start operation.
virtual void stop(const nlohmann::json &args)=0
Stop operation.
RawDataProcessorConcept & operator=(const RawDataProcessorConcept &)=delete
RawDataProcessorConcept is not copy-assginable.
RawDataProcessorConcept()
RawDataProcessorConcept & operator=(RawDataProcessorConcept &&)=delete
RawDataProcessorConcept is not move-assignable.
virtual void postprocess_item(const ReadoutType *item)=0
Postprocess one element.
virtual void preprocess_item(ReadoutType *item)=0
Preprocess one element.