LCOV - code coverage report
Current view: top level - artdaq/Application - EventBuilderCore.hh (source / functions) Coverage Total Hit
Test: artdaq.info.cleaned Lines: 0.0 % 5 0
Test Date: 2025-09-04 00:45:34 Functions: 0.0 % 4 0

            Line data    Source code
       1              : #ifndef artdaq_Application_MPI2_EventBuilderCore_hh
       2              : #define artdaq_Application_MPI2_EventBuilderCore_hh
       3              : 
       4              : #include "artdaq/Application/DataReceiverCore.hh"
       5              : 
       6              : namespace fhicl {
       7              : class ParameterSet;
       8              : }
       9              : 
      10              : namespace artdaq {
      11              : class EventBuilderCore;
      12              : }
      13              : 
      14              : /**
      15              :  * \brief EventBuilderCore implements the state machine for the EventBuilder artdaq application.
      16              :  * EventBuilderCore receives Fragment objects from the DataReceiverManager, and sends them to the EventStore.
      17              :  */
      18              : class artdaq::EventBuilderCore : public DataReceiverCore
      19              : {
      20              : public:
      21              :         /**
      22              :          * \brief EventBuilderCore Constructor.
      23              :          */
      24            0 :         EventBuilderCore() = default;
      25              : 
      26              :         /**
      27              :          * \brief Copy Constructor is deleted
      28              :          */
      29              :         EventBuilderCore(EventBuilderCore const&) = delete;
      30              : 
      31              :         /**
      32              :          * Destructor.
      33              :          */
      34            0 :         ~EventBuilderCore()
      35            0 :         {
      36            0 :                 TLOG(TLVL_DEBUG + 32) << "Destructor";
      37            0 :         }
      38              : 
      39              :         /**
      40              :          * \brief Copy Assignment operator is deleted
      41              :          * \return AggregatorCore copy
      42              :          */
      43              :         EventBuilderCore& operator=(EventBuilderCore const&) = delete;
      44              :         EventBuilderCore(EventBuilderCore&&) = delete;             ///< Move Constructor is deleted
      45              :         EventBuilderCore& operator=(EventBuilderCore&&) = delete;  ///< Move Assignment Operator is deleted
      46              : 
      47              :         /**
      48              :          * \brief Processes the initialize request.
      49              :          * \param pset ParameterSet used to configure the EventBuilderCore
      50              :          * \return Whether the initialize attempt succeeded
      51              :          *
      52              :          * \verbatim
      53              :          * EventBuilderCore accepts the following Parameters:
      54              :          * "daq" (REQUIRED): FHiCL table containing DAQ configuration
      55              :          *   "event_builder" (REQUIRED): FHiCL table containing Aggregator paramters
      56              :          *     "fragment_count" (REQUIRED): Number of Fragment objects to collect before sending them to art
      57              :          *     "inrun_recv_timeout_usec" (Default: 100000): Amount of time to wait for new Fragment objects while running
      58              :          *     "endrun_recv_timeout_usec" (Default: 20000000): Amount of time to wait for additional Fragment objects at EndOfRun
      59              :          *     "pause_recv_timeout_usec" (Default: 3000000): Amount of time to wait for additional Fragment objects at PauseRun
      60              :          *     "verbose" (Default: true): Whether to print transition messages
      61              :          *   "metrics": FHiCL table containing configuration for MetricManager
      62              :          * \endverbatim
      63              :          *
      64              :          *  Note that the "event_builder" ParameterSet is also used to configure the SharedMemoryEventManager. See that class' documentation for more information.
      65              :          */
      66              :         bool initialize(fhicl::ParameterSet const& pset) override;
      67              : };
      68              : 
      69              : #endif /* artdaq_Application_MPI2_EventBuilderCore_hh */
        

Generated by: LCOV version 2.0-1