10#include <framework/core/Module.h>
12#include <daq/hbasf2/utils/HLTStreamHelper.h>
13#include <framework/pcore/zmq/connections/ZMQConfirmedConnection.h>
15#include <framework/pcore/zmq/utils/ZMQParent.h>
16#include <framework/datastore/StoreObjPtr.h>
17#include <framework/dataobjects/EventMetaData.h>
54 void event()
override;
85 std::chrono::system_clock::time_point
m_start;
Module to collect DQM histograms (written out by HistoModules) and send them every time period to a r...
bool m_firstEvent
Are we still in the first event?
std::string m_param_output
Module parameter: histogram server address.
void sendOutHistograms()
Helper function to serialize and send out the histograms.
void event() override
On the first event, initialize the connection and the streamer.
void endRun() override
Stream the histograms one last time and send out a run end message. We rely on all histogram modules ...
std::shared_ptr< ZMQParent > m_parent
ZMQ Parent needed for the connections.
void terminate() override
Stream the histograms one last time and send out a terminate message. We rely on all histogram module...
HLTDQM2ZMQModule()
Register the module parameters.
StoreObjPtr< EventMetaData > m_eventMetaData
Reference to the event meta data in the data store for sending out the run and experiment number.
void beginRun() override
Call the defineHisto function of all histogram modules registered at the RbTupleManager singleton.
bool m_histogramsDefined
Are the histograms already defined (e.g. defineHisto is called)? TODO: should we reset this after the...
HLTStreamHelper m_streamHelper
Streamer utility. TODO: in principle we do not need this, could be static!
std::unique_ptr< ZMQConfirmedOutput > m_output
Confirmed connection to the histogram server.
unsigned int m_param_sendOutInterval
Module parameter: send out interval in seconds.
std::chrono::system_clock::time_point m_start
Point in time when the current interval counting started.
Helper class for data store serialization.
Type-safe access to single objects in the data store.
Abstract base class for different kinds of events.