LCOV - code coverage report
Current view: top level - crtmodules/src - SourceConcept.hpp (source / functions) Coverage Total Hit
Test: code.result Lines: 0.0 % 5 0
Test Date: 2025-12-21 13:07:08 Functions: 0.0 % 3 0

            Line data    Source code
       1              : 
       2              : /**
       3              :  * @file SourceConcept.hpp SourceConcept for constructors and
       4              :  * forwarding command args. Enforces the implementation to
       5              :  * queue in UDP JUMBO frames to be translated to TypeAdapters and
       6              :  * send them to corresponding sinks.
       7              :  *
       8              :  * This is part of the DUNE DAQ , copyright 2020.
       9              :  * Licensing/copyright details are in the COPYING file that you should have
      10              :  * received with this code.
      11              :  */
      12              : #ifndef CRTMODULES_SRC_SOURCECONCEPT_HPP_
      13              : #define CRTMODULES_SRC_SOURCECONCEPT_HPP_
      14              : 
      15              : //#include "DefaultParserImpl.hpp"
      16              : 
      17              : #include "opmonlib/MonitorableObject.hpp"
      18              : #include "appfwk/DAQModule.hpp"
      19              : //#include "packetformat/detail/block_parser.hpp"
      20              : #include <nlohmann/json.hpp>
      21              : 
      22              : #include <memory>
      23              : #include <sstream>
      24              : #include <string>
      25              : 
      26              : namespace dunedaq {
      27              :   namespace crtmodules {
      28              : 
      29              :     class SourceConcept : public opmonlib::MonitorableObject
      30              :     {
      31              :     public:
      32            0 :       SourceConcept() {}
      33            0 :       virtual ~SourceConcept() {}
      34              : 
      35              :       SourceConcept(const SourceConcept&) = delete;            ///< SourceConcept is not copy-constructible
      36              :       SourceConcept& operator=(const SourceConcept&) = delete; ///< SourceConcept is not copy-assignable
      37              :       SourceConcept(SourceConcept&&) = delete;                 ///< SourceConcept is not move-constructible
      38              :       SourceConcept& operator=(SourceConcept&&) = delete;      ///< SourceConcept is not move-assignable
      39              : 
      40              :       //  virtual void init(const nlohmann::json& args) = 0;
      41              :       virtual void set_sink(const std::string& sink_name, bool callback_mode) = 0;
      42              :       virtual void acquire_callback() = 0;
      43              :       //  virtual void conf(const nlohmann::json& args) = 0;
      44              :       //  virtual void start(const nlohmann::json& args) = 0;
      45              :       //  virtual void stop(const nlohmann::json& args) = 0;
      46              : 
      47              :       virtual bool handle_payload(char* message, std::size_t size) = 0;
      48              :       virtual std::size_t get_frame_size() const = 0;
      49              : 
      50            0 :       void set_sink_name(const std::string& sink_name) 
      51              :       { 
      52            0 :         m_sink_name = sink_name; 
      53            0 :       }
      54              : 
      55              :       std::string m_sink_name;
      56              :     };
      57              : 
      58              :   } // namespace crtmodules
      59              : } // namespace dunedaq
      60              : 
      61              : #endif // CRTMODULES_SRC_SOURCECONCEPT_HPP_
        

Generated by: LCOV version 2.0-1