DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
#include <TaskRawDataProcessorModel.hpp>
Public Member Functions | |
TaskRawDataProcessorModel (std::unique_ptr< FrameErrorRegistry > &error_registry, bool post_processing_enabled) | |
~TaskRawDataProcessorModel () | |
void | conf (const appmodel::DataHandlerModule *conf) override |
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones. | |
void | scrap (const nlohmann::json &) override |
Unconfigure. | |
void | start (const nlohmann::json &) override |
Start operation. | |
void | stop (const nlohmann::json &) override |
Stop operation. | |
void | reset_last_daq_time () |
std::uint64_t | get_last_daq_time () override |
Get newest timestamp of last seen packet. | |
void | preprocess_item (ReadoutType *item) override |
Preprocess one element. | |
void | postprocess_item (const ReadoutType *item) override |
Postprocess one element. | |
template<typename Task > | |
void | add_preprocess_task (Task &&task) |
template<typename Task > | |
void | add_postprocess_task (Task &&task) |
void | invoke_all_preprocess_functions (ReadoutType *item) |
void | launch_all_preprocess_functions (ReadoutType *item) |
![]() | |
RawDataProcessorConcept () | |
virtual | ~RawDataProcessorConcept () |
RawDataProcessorConcept (const RawDataProcessorConcept &)=delete | |
RawDataProcessorConcept is not copy-constructible. | |
RawDataProcessorConcept & | operator= (const RawDataProcessorConcept &)=delete |
RawDataProcessorConcept is not copy-assginable. | |
RawDataProcessorConcept (RawDataProcessorConcept &&)=delete | |
RawDataProcessorConcept is not move-constructible. | |
RawDataProcessorConcept & | operator= (RawDataProcessorConcept &&)=delete |
RawDataProcessorConcept is not move-assignable. | |
![]() | |
MonitorableObject (const MonitorableObject &)=delete | |
MonitorableObject & | operator= (const MonitorableObject &)=delete |
MonitorableObject (MonitorableObject &&)=delete | |
MonitorableObject & | operator= (MonitorableObject &&)=delete |
virtual | ~MonitorableObject ()=default |
auto | get_opmon_id () const noexcept |
auto | get_opmon_level () const noexcept |
Protected Member Functions | |
virtual void | generate_opmon_data () override |
void | run_post_processing_thread (std::function< void(const ReadoutType *)> &function, folly::ProducerConsumerQueue< const ReadoutType * > &queue) |
![]() | |
MonitorableObject ()=default | |
void | register_node (ElementId name, NewNodePtr) |
void | publish (google::protobuf::Message &&, CustomOrigin &&co={}, OpMonLevel l=to_level(EntryOpMonLevel::kDefault)) const noexcept |
Protected Attributes | |
std::vector< std::function< void(ReadoutType *)> > | m_preprocess_functions |
std::unique_ptr< FrameErrorRegistry > & | m_error_registry |
bool | m_post_processing_enabled |
std::atomic< bool > | m_run_marker { false } |
std::vector< std::function< void(const ReadoutType *)> > | m_post_process_functions |
std::vector< std::unique_ptr< folly::ProducerConsumerQueue< const ReadoutType * > > > | m_items_to_postprocess_queues |
std::vector< std::unique_ptr< utilities::ReusableThread > > | m_post_process_threads |
size_t | m_postprocess_queue_sizes |
daqdataformats::SourceID | m_sourceid |
std::atomic< uint64_t > | m_last_processed_daq_ts { 0 } |
Additional Inherited Members | |
![]() | |
using | NodePtr = std::weak_ptr<MonitorableObject> |
using | NewNodePtr = std::shared_ptr<MonitorableObject> |
using | ElementId = std::string |
![]() | |
static bool | publishable_metric (OpMonLevel entry, OpMonLevel system) noexcept |
Definition at line 46 of file TaskRawDataProcessorModel.hpp.
|
inlineexplicit |
Definition at line 50 of file TaskRawDataProcessorModel.hpp.
|
inline |
Definition at line 57 of file TaskRawDataProcessorModel.hpp.
void dunedaq::datahandlinglibs::TaskRawDataProcessorModel< ReadoutType >::add_postprocess_task | ( | Task && | task | ) |
Definition at line 81 of file TaskRawDataProcessorModel.hxx.
void dunedaq::datahandlinglibs::TaskRawDataProcessorModel< ReadoutType >::add_preprocess_task | ( | Task && | task | ) |
Definition at line 73 of file TaskRawDataProcessorModel.hxx.
|
overridevirtual |
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Reimplemented in dunedaq::fdreadoutlibs::TDEEthFrameProcessor, dunedaq::fdreadoutlibs::TDEFrameProcessor, dunedaq::fdreadoutlibs::WIBEthFrameProcessor, dunedaq::trigger::TCProcessor, and dunedaq::trigger::TPProcessor.
Definition at line 8 of file TaskRawDataProcessorModel.hxx.
|
overrideprotectedvirtual |
Hook for customisable pubblication. The function can throw, exception will be caught by the monitoring thread
Reimplemented from dunedaq::opmonlib::MonitorableObject.
Reimplemented in dunedaq::fdreadoutlibs::TDEEthFrameProcessor, dunedaq::fdreadoutlibs::WIBEthFrameProcessor, dunedaq::trigger::TAProcessor, dunedaq::trigger::TCProcessor, and dunedaq::trigger::TPProcessor.
Definition at line 123 of file TaskRawDataProcessorModel.hxx.
|
inlineoverridevirtual |
Get newest timestamp of last seen packet.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Definition at line 75 of file TaskRawDataProcessorModel.hpp.
void dunedaq::datahandlinglibs::TaskRawDataProcessorModel< ReadoutType >::invoke_all_preprocess_functions | ( | ReadoutType * | item | ) |
Definition at line 89 of file TaskRawDataProcessorModel.hxx.
void dunedaq::datahandlinglibs::TaskRawDataProcessorModel< ReadoutType >::launch_all_preprocess_functions | ( | ReadoutType * | item | ) |
Definition at line 98 of file TaskRawDataProcessorModel.hxx.
|
overridevirtual |
Postprocess one element.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Definition at line 61 of file TaskRawDataProcessorModel.hxx.
|
inlineoverridevirtual |
Preprocess one element.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Definition at line 78 of file TaskRawDataProcessorModel.hpp.
|
inline |
Definition at line 72 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 107 of file TaskRawDataProcessorModel.hxx.
|
overridevirtual |
Unconfigure.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Reimplemented in dunedaq::trigger::TCProcessor, and dunedaq::trigger::TPProcessor.
Definition at line 24 of file TaskRawDataProcessorModel.hxx.
|
overridevirtual |
Start operation.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Reimplemented in dunedaq::fdreadoutlibs::TDEEthFrameProcessor, dunedaq::fdreadoutlibs::WIBEthFrameProcessor, dunedaq::trigger::TCProcessor, and dunedaq::trigger::TPProcessor.
Definition at line 34 of file TaskRawDataProcessorModel.hxx.
|
overridevirtual |
Stop operation.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< ReadoutType >.
Reimplemented in dunedaq::fdreadoutlibs::TDEEthFrameProcessor, dunedaq::fdreadoutlibs::WIBEthFrameProcessor, dunedaq::trigger::TCProcessor, and dunedaq::trigger::TPProcessor.
Definition at line 49 of file TaskRawDataProcessorModel.hxx.
|
protected |
Definition at line 103 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 115 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 123 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 114 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 116 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 108 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 119 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 102 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 111 of file TaskRawDataProcessorModel.hpp.
|
protected |
Definition at line 121 of file TaskRawDataProcessorModel.hpp.