Belle II Software  release-05-02-19
ZMQTxWorkerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Nils Braun, Anselm Baur *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <framework/core/Module.h>
13 
14 #include <framework/pcore/zmq/sockets/ZMQClient.h>
15 #include <framework/pcore/zmq/utils/StreamHelper.h>
16 
17 
18 namespace Belle2 {
27  class ZMQTxWorkerModule : public Module {
28  public:
32  void event() override;
34  void terminate() override;
35 
36  private:
38  bool m_firstEvent = true;
39 
41  std::string m_param_socketName;
43  std::string m_param_xpubProxySocketName;
45  std::string m_param_xsubProxySocketName;
50 
55  };
57 }
Belle2::ZMQTxWorkerModule::m_param_xpubProxySocketName
std::string m_param_xpubProxySocketName
Parameter: name of the pub multicast socket.
Definition: ZMQTxWorkerModule.h:51
Belle2::ZMQTxWorkerModule::terminate
void terminate() override
Terminate the client and tell the monitor, we are done.
Definition: ZMQTxWorkerModule.cc:50
Belle2::ZMQTxWorkerModule::event
void event() override
Pack the datastore and stream it.
Definition: ZMQTxWorkerModule.cc:30
Belle2::ZMQTxWorkerModule::m_param_compressionLevel
int m_param_compressionLevel
Parameter: Compression level of the streamer.
Definition: ZMQTxWorkerModule.h:55
Belle2::ZMQTxWorkerModule::m_firstEvent
bool m_firstEvent
Set to false if the objects are initialized.
Definition: ZMQTxWorkerModule.h:46
Belle2::StreamHelper
Helper class for data store serialization.
Definition: StreamHelper.h:33
Belle2::ZMQTxWorkerModule::m_param_xsubProxySocketName
std::string m_param_xsubProxySocketName
Parameter: name of the sub multicast socket.
Definition: ZMQTxWorkerModule.h:53
Belle2::ZMQTxWorkerModule::m_param_socketName
std::string m_param_socketName
Parameter: name of the data socket.
Definition: ZMQTxWorkerModule.h:49
Belle2::ZMQTxWorkerModule::ZMQTxWorkerModule
ZMQTxWorkerModule()
Constructor setting the moudle paramters.
Definition: ZMQTxWorkerModule.cc:18
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ZMQTxWorkerModule::m_streamer
StreamHelper m_streamer
The data store streamer.
Definition: ZMQTxWorkerModule.h:62
Belle2::ZMQTxWorkerModule::m_param_handleMergeable
bool m_param_handleMergeable
Parameter: Can we handle mergeables?
Definition: ZMQTxWorkerModule.h:57
Belle2::ZMQTxWorkerModule::m_zmqClient
ZMQClient m_zmqClient
Our ZMQ client.
Definition: ZMQTxWorkerModule.h:60
Belle2::ZMQClient
A helper class for communicating over ZMQ. Includes a multicast and (if needed) also a data socket.
Definition: ZMQClient.h:32