|
DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
#include <DAPHNEEthFrameProcessor.hpp>
Public Types | |
| using | inherited = datahandlinglibs::TaskRawDataProcessorModel<types::DAPHNEEthTypeAdapter> |
| using | frameptr = types::DAPHNEEthTypeAdapter* |
| using | daphneframeptr = dunedaq::fddetdataformats::DAPHNEEthFrame* |
| using | timestamp_t = std::uint64_t |
| using | constframeptr = const types::DAPHNEEthTypeAdapter* |
Public Types inherited from dunedaq::opmonlib::MonitorableObject | |
| using | NodePtr = std::weak_ptr<MonitorableObject> |
| using | NewNodePtr = std::shared_ptr<MonitorableObject> |
| using | ElementId = std::string |
Public Member Functions | |
| DAPHNEEthFrameProcessor (std::unique_ptr< datahandlinglibs::FrameErrorRegistry > &error_registry, bool post_processing_enabled) | |
| void | conf (const appmodel::DataHandlerModule *conf) override |
| Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones. | |
| void | start (const appfwk::DAQModule::CommandData_t &args) override |
| Start operation. | |
| void | stop (const appfwk::DAQModule::CommandData_t &args) override |
| Stop operation. | |
Public Member Functions inherited from dunedaq::datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEEthTypeAdapter > | |
| 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 appfwk::DAQModule::CommandData_t &) override |
| Unconfigure. | |
| void | start (const appfwk::DAQModule::CommandData_t &) override |
| Start operation. | |
| void | stop (const appfwk::DAQModule::CommandData_t &) 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 (types::DAPHNEEthTypeAdapter *item) override |
| Preprocess one element. | |
| void | postprocess_item (const types::DAPHNEEthTypeAdapter *item) override |
| Postprocess one element. | |
| void | invoke_postprocess_schedule_timeout_policy (std::uint64_t accumilated_timeout_ticks) override |
| Handle postprocess timeout event. | |
| void | add_preprocess_task (Task &&task) |
| void | add_postprocess_task (Task &&task) |
| void | invoke_all_preprocess_functions (types::DAPHNEEthTypeAdapter *item) |
| void | launch_all_preprocess_functions (types::DAPHNEEthTypeAdapter *item) |
Public Member Functions inherited from dunedaq::datahandlinglibs::RawDataProcessorConcept< types::DAPHNEEthTypeAdapter > | |
| RawDataProcessorConcept () | |
| RawDataProcessorConcept (const RawDataProcessorConcept &)=delete | |
| RawDataProcessorConcept is not copy-constructible. | |
| RawDataProcessorConcept (RawDataProcessorConcept &&)=delete | |
| RawDataProcessorConcept is not move-constructible. | |
| virtual | ~RawDataProcessorConcept () |
| RawDataProcessorConcept & | operator= (const RawDataProcessorConcept &)=delete |
| RawDataProcessorConcept is not copy-assginable. | |
| RawDataProcessorConcept & | operator= (RawDataProcessorConcept &&)=delete |
| RawDataProcessorConcept is not move-assignable. | |
Public Member Functions inherited from dunedaq::opmonlib::MonitorableObject | |
| 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 | timestamp_check (frameptr) |
| void | frame_error_check (frameptr) |
| void | extract_tps (constframeptr fp) |
Protected Member Functions inherited from dunedaq::datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEEthTypeAdapter > | |
| void | run_post_processing_thread (std::function< void(const types::DAPHNEEthTypeAdapter *)> &function, folly::ProducerConsumerQueue< const types::DAPHNEEthTypeAdapter * > &queue) |
Protected Member Functions inherited from dunedaq::opmonlib::MonitorableObject | |
| 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 | |
| timestamp_t | m_previous_ts = 0 |
| timestamp_t | m_current_ts = 0 |
| bool | m_first_ts_fake = true |
| bool | m_first_ts_missmatch = true |
| bool | m_problem_reported = false |
| std::atomic< int > | m_ts_error_ctr { 0 } |
Protected Attributes inherited from dunedaq::datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEEthTypeAdapter > | |
| std::vector< std::function< void(types::DAPHNEEthTypeAdapter *)> > | m_preprocess_functions |
| std::unique_ptr< FrameErrorRegistry > & | m_error_registry |
| bool | m_post_processing_enabled |
| std::atomic< bool > | m_run_marker |
| std::vector< std::function< void(const types::DAPHNEEthTypeAdapter *)> > | m_post_process_functions |
| std::vector< std::unique_ptr< folly::ProducerConsumerQueue< const types::DAPHNEEthTypeAdapter * > > > | 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 |
Private Attributes | |
| std::shared_ptr< detchannelmaps::PDSChannelMap > | m_channel_map |
| std::vector< std::pair< trgdataformats::channel_t, int16_t > > | m_channel_plane_numbers |
| uint32_t | m_det_id |
| uint32_t | m_crate_id |
| uint32_t | m_slot_id |
| uint32_t | m_stream_id |
| std::set< unsigned int > | m_channel_mask_set |
| uint32_t | m_def_adc_intg_thresh = 0 |
| std::shared_ptr< iomanager::SenderConcept< std::vector< trigger::TriggerPrimitiveTypeAdapter > > > | m_tp_sink |
| std::atomic< uint64_t > | m_num_new_tps { 0 } |
| std::atomic< uint64_t > | m_tps_suppressed_too_long { 0 } |
| std::atomic< uint64_t > | m_tps_send_failed { 0 } |
| std::atomic< uint64_t > | m_frame_counter { 0 } |
| std::chrono::time_point< std::chrono::high_resolution_clock > | m_t0 |
Additional Inherited Members | |
Static Public Member Functions inherited from dunedaq::opmonlib::MonitorableObject | |
| static bool | publishable_metric (OpMonLevel entry, OpMonLevel system) noexcept |
Definition at line 48 of file DAPHNEEthFrameProcessor.hpp.
| using dunedaq::fdreadoutlibs::DAPHNEEthFrameProcessor::constframeptr = const types::DAPHNEEthTypeAdapter* |
Definition at line 56 of file DAPHNEEthFrameProcessor.hpp.
| using dunedaq::fdreadoutlibs::DAPHNEEthFrameProcessor::daphneframeptr = dunedaq::fddetdataformats::DAPHNEEthFrame* |
Definition at line 54 of file DAPHNEEthFrameProcessor.hpp.
Definition at line 53 of file DAPHNEEthFrameProcessor.hpp.
| using dunedaq::fdreadoutlibs::DAPHNEEthFrameProcessor::inherited = datahandlinglibs::TaskRawDataProcessorModel<types::DAPHNEEthTypeAdapter> |
Definition at line 52 of file DAPHNEEthFrameProcessor.hpp.
| using dunedaq::fdreadoutlibs::DAPHNEEthFrameProcessor::timestamp_t = std::uint64_t |
Definition at line 55 of file DAPHNEEthFrameProcessor.hpp.
|
inlineexplicit |
Definition at line 59 of file DAPHNEEthFrameProcessor.hpp.
|
overridevirtual |
Set the emulator mode, if active, timestamps of processed packets are overwritten with new ones.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< types::DAPHNEEthTypeAdapter >.
Definition at line 31 of file DAPHNEEthFrameProcessor.cpp.
|
protected |
Definition at line 155 of file DAPHNEEthFrameProcessor.cpp.
|
protected |
Pipeline Stage 2.: Check DAPHNE headers for error flags
Definition at line 149 of file DAPHNEEthFrameProcessor.cpp.
|
overrideprotectedvirtual |
Hook for customisable pubblication. The function can throw, exception will be caught by the monitoring thread
Reimplemented from dunedaq::datahandlinglibs::TaskRawDataProcessorModel< types::DAPHNEEthTypeAdapter >.
Definition at line 212 of file DAPHNEEthFrameProcessor.cpp.
|
overridevirtual |
Start operation.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< types::DAPHNEEthTypeAdapter >.
Definition at line 89 of file DAPHNEEthFrameProcessor.cpp.
|
overridevirtual |
Stop operation.
Implements dunedaq::datahandlinglibs::RawDataProcessorConcept< types::DAPHNEEthTypeAdapter >.
Definition at line 104 of file DAPHNEEthFrameProcessor.cpp.
|
protected |
Pipeline Stage 1.: Check proper timestamp increments in DAPHNE frame
Definition at line 112 of file DAPHNEEthFrameProcessor.cpp.
|
private |
Definition at line 95 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 103 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 96 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 99 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 84 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 104 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 98 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 85 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 86 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 113 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 110 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 83 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 87 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 100 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 101 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 115 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 108 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 112 of file DAPHNEEthFrameProcessor.hpp.
|
private |
Definition at line 111 of file DAPHNEEthFrameProcessor.hpp.
|
protected |
Definition at line 88 of file DAPHNEEthFrameProcessor.hpp.