artdaq  v3_06_00
artdaq::EventBuilderCore Class Reference

EventBuilderCore implements the state machine for the EventBuilder artdaq application. EventBuilderCore receives Fragment objects from the DataReceiverManager, and sends them to the EventStore. More...

#include <artdaq/Application/EventBuilderCore.hh>

Inheritance diagram for artdaq::EventBuilderCore:
artdaq::DataReceiverCore

Public Member Functions

 EventBuilderCore ()
 EventBuilderCore Constructor.
 
 EventBuilderCore (EventBuilderCore const &)=delete
 Copy Constructor is deleted.
 
 ~EventBuilderCore ()
 
EventBuilderCoreoperator= (EventBuilderCore const &)=delete
 Copy Assignment operator is deleted. More...
 
bool initialize (fhicl::ParameterSet const &pset) override
 Processes the initialize request. More...
 
- Public Member Functions inherited from artdaq::DataReceiverCore
 DataReceiverCore ()
 DataReceiverCore Constructor.
 
 DataReceiverCore (DataReceiverCore const &)=delete
 Copy Constructor is deleted.
 
virtual ~DataReceiverCore ()
 
DataReceiverCoreoperator= (DataReceiverCore const &)=delete
 Copy Assignment operator is deleted. More...
 
bool start (art::RunID id)
 Start the DataReceiverCore. More...
 
bool stop ()
 Stops the DataReceiverCore. More...
 
bool pause ()
 Pauses the DataReceiverCore. More...
 
bool resume ()
 Resumes the DataReceiverCore. More...
 
bool shutdown ()
 Shuts Down the DataReceiverCore. More...
 
bool soft_initialize (fhicl::ParameterSet const &pset)
 Soft-Initializes the DataReceiverCore. No-Op. More...
 
bool reinitialize (fhicl::ParameterSet const &pset)
 Reinitializes the DataReceiverCore. More...
 
bool rollover_subrun (uint64_t eventNum, uint32_t subrun)
 Rollover the subrun after the given event. More...
 
std::string report (std::string const &which) const
 Send a report on a given run-time quantity. More...
 
bool add_config_archive_entry (std::string const &key, std::string const &value)
 Add the specified key and value to the configuration archive list. More...
 
bool clear_config_archive ()
 Clear the configuration archive list. More...
 

Additional Inherited Members

- Protected Member Functions inherited from artdaq::DataReceiverCore
bool initializeDataReceiver (fhicl::ParameterSet const &pset, fhicl::ParameterSet const &data_pset, fhicl::ParameterSet const &metric_pset)
 Initialize the DataReceiverCore (should be called from initialize() overrides. More...
 
void logMessage_ (std::string const &text)
 Log a message, setting severity based on verbosity flag. More...
 
- Protected Attributes inherited from artdaq::DataReceiverCore
std::unique_ptr
< DataReceiverManager
receiver_ptr_
 Pointer to the DataReceiverManager.
 
std::shared_ptr
< SharedMemoryEventManager
event_store_ptr_
 Pointer to the SharedMemoryEventManager.
 
std::atomic< bool > stop_requested_
 Stop has been requested?
 
std::atomic< bool > pause_requested_
 Pause has been requested?
 
std::atomic< bool > run_is_paused_
 Pause has been successfully completed?
 
bool verbose_
 Whether to log transition messages.
 
fhicl::ParameterSet art_pset_
 ParameterSet sent to art process.
 
std::map< std::string,
std::string > 
config_archive_entries_
 Additional strings to archive as part of the art configuration.
 

Detailed Description

EventBuilderCore implements the state machine for the EventBuilder artdaq application. EventBuilderCore receives Fragment objects from the DataReceiverManager, and sends them to the EventStore.

Definition at line 17 of file EventBuilderCore.hh.

Constructor & Destructor Documentation

artdaq::EventBuilderCore::~EventBuilderCore ( )

Destructor.

Definition at line 19 of file EventBuilderCore.cc.

Member Function Documentation

bool artdaq::EventBuilderCore::initialize ( fhicl::ParameterSet const &  pset)
overridevirtual

Processes the initialize request.

Parameters
psetParameterSet used to configure the EventBuilderCore
Returns
Whether the initialize attempt succeeded
* EventBuilderCore accepts the following Parameters:
* "daq" (REQUIRED): FHiCL table containing DAQ configuration
*   "event_builder" (REQUIRED): FHiCL table containing Aggregator paramters
*     "fragment_count" (REQUIRED): Number of Fragment objects to collect before sending them to art
*     "inrun_recv_timeout_usec" (Default: 100000): Amount of time to wait for new Fragment objects while running
*     "endrun_recv_timeout_usec" (Default: 20000000): Amount of time to wait for additional Fragment objects at EndOfRun
*     "pause_recv_timeout_usec" (Default: 3000000): Amount of time to wait for additional Fragment objects at PauseRun
*     "verbose" (Default: true): Whether to print transition messages
*   "metrics": FHiCL table containing configuration for MetricManager
* 

Note that the "event_builder" ParameterSet is also used to configure the SharedMemoryEventManager. See that class' documentation for more information.

Implements artdaq::DataReceiverCore.

Definition at line 24 of file EventBuilderCore.cc.

EventBuilderCore& artdaq::EventBuilderCore::operator= ( EventBuilderCore const &  )
delete

Copy Assignment operator is deleted.

Returns
AggregatorCore copy

The documentation for this class was generated from the following files: