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

            Line data    Source code
       1              : #ifndef artdaq_Application_MPI2_EventBuilderApp_hh
       2              : #define artdaq_Application_MPI2_EventBuilderApp_hh
       3              : 
       4              : #include "artdaq/Application/Commandable.hh"
       5              : #include "artdaq/Application/EventBuilderCore.hh"
       6              : 
       7              : #include <memory>
       8              : 
       9              : namespace artdaq {
      10              : class EventBuilderApp;
      11              : }
      12              : 
      13              : /**
      14              :  * \brief EventBuilderApp is an artdaq::Commandable derived class which controls the EventBuilderCore
      15              :  */
      16              : class artdaq::EventBuilderApp : public artdaq::Commandable
      17              : {
      18              : public:
      19              :         /**
      20              :          * \brief EventBuilderApp Constructor
      21              :          */
      22              :         EventBuilderApp();
      23              : 
      24              :         /**
      25              :          * \brief Copy Constructor is deleted
      26              :          */
      27              :         EventBuilderApp(EventBuilderApp const&) = delete;
      28              : 
      29              :         /**
      30              :          * \brief Default Destructor
      31              :          */
      32            0 :         virtual ~EventBuilderApp() = default;
      33              : 
      34              :         /**
      35              :          * \brief Copy Assignment Operator is deleted
      36              :          * \return EventBuilderApp copy
      37              :          */
      38              :         EventBuilderApp& operator=(EventBuilderApp const&) = delete;
      39              :         EventBuilderApp(EventBuilderApp&&) = delete;             ///< Move Constructor is deleted
      40              :         EventBuilderApp& operator=(EventBuilderApp&&) = delete;  ///< Move Assignment Operator is deleted
      41              : 
      42              :         // these methods provide the operations that are used by the state machine
      43              :         /**
      44              :          * \brief Initialize the EventBuilderCore
      45              :          * \param pset ParameterSet used to configure the EventBuilderCore
      46              :          * \return Whether the transition succeeded
      47              :          */
      48              :         bool do_initialize(fhicl::ParameterSet const& pset, uint64_t, uint64_t) override;
      49              : 
      50              :         /**
      51              :          * \brief Start the EventBuilderCore
      52              :          * \param id Run ID of new run
      53              :          * \return Whether the transition succeeded
      54              :          */
      55              :         bool do_start(art::RunID id, uint64_t, uint64_t) override;
      56              : 
      57              :         /**
      58              :          * \brief Stop the EventBuilderCore
      59              :          * \return Whether the transition succeeded
      60              :          */
      61              :         bool do_stop(uint64_t, uint64_t) override;
      62              : 
      63              :         /**
      64              :          * \brief Pause the EventBuilderCore
      65              :          * \return Whether the transition succeeded
      66              :          */
      67              :         bool do_pause(uint64_t, uint64_t) override;
      68              : 
      69              :         /**
      70              :          * \brief Resume the EventBuilderCore
      71              :          * \return Whether the transition succeeded
      72              :          */
      73              :         bool do_resume(uint64_t, uint64_t) override;
      74              : 
      75              :         /**
      76              :          * \brief Shutdown the EventBuilderCore
      77              :          * \return Whether the transition succeeded
      78              :          */
      79              :         bool do_shutdown(uint64_t) override;
      80              : 
      81              :         /**
      82              :          * \brief Soft-Initialize the EventBuilderCore
      83              :          * \param pset ParameterSet used to configure the EventBuilderCore
      84              :          * \return Whether the transition succeeded
      85              :          */
      86              :         bool do_soft_initialize(fhicl::ParameterSet const& pset, uint64_t, uint64_t) override;
      87              : 
      88              :         /**
      89              :          * \brief Reinitialize the EventBuilderCore
      90              :          * \param pset ParameterSet used to configure the EventBuilderCore
      91              :          * \return Whether the transition succeeded
      92              :          */
      93              :         bool do_reinitialize(fhicl::ParameterSet const& pset, uint64_t, uint64_t) override;
      94              : 
      95              :         /**
      96              :          * \brief Rollover the subrun after the given event
      97              :          * \param boundary Sequence ID of boundary
      98              :          * \param subrunNum Number of new subrun
      99              :          * \return True event_store_ptr is valid
     100              :          */
     101              :         bool do_rollover_subrun(uint64_t boundary, uint32_t subrunNum) override;
     102              : 
     103              :         /**
     104              :          * \brief Action taken upon entering the "Booted" state
     105              :          *
     106              :          * This is a No-Op
     107              :          */
     108              :         void BootedEnter() override;
     109              : 
     110              :         /* Report_ptr */
     111              :         /**
     112              :          * \brief If which is "transition_status", report the status of the last transition. Otherwise pass through to EventBuilderCore
     113              :          * \param which What to report on
     114              :          * \return Report string. Empty for unknown "which" parameter
     115              :          */
     116              :         std::string report(std::string const& which) const override;
     117              : 
     118              :         /**
     119              :          * \brief Add the specified configuration archive entry to the EventBuilderCore
     120              :          * \return Whether the command succeeded
     121              :          */
     122              :         bool do_add_config_archive_entry(std::string const&, std::string const&) override;
     123              : 
     124              :         /**
     125              :          * \brief Clear the configuration archive list in the EventBuilderCore
     126              :          * \return Whether the command succeeded
     127              :          */
     128              :         bool do_clear_config_archive() override;
     129              : 
     130              : private:
     131              :         std::unique_ptr<artdaq::EventBuilderCore> event_builder_ptr_;
     132              : };
     133              : 
     134              : #endif /* artdaq_Application_MPI2_EventBuilderApp_hh */
        

Generated by: LCOV version 2.0-1