Belle II Software development
Ds2RawModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef DS2RBUFMODULE_H
10#define DS2RBUFMODULE_H
11
12#include <framework/core/Module.h>
13#include <framework/pcore/RingBuffer.h>
14
15#include <framework/pcore/DataStoreStreamer.h>
16
17#include <string>
18
19#define RBUFSIZE 100000000
20#define HLT_SUBSYS_ID 300
21
22namespace Belle2 {
27
29
30 class Ds2RawModule : public Module {
31
32 // Public functions
33 public:
34
37 virtual ~Ds2RawModule();
38
40 void initialize() override;
41
43 void beginRun() override;
44 void event() override;
45 void endRun() override;
46 void terminate() override;
47
48 // Data members
49 private:
50
53
55 std::string m_rbufname;
56 RingBuffer* m_rbuf;
57
60
63
64 };
65
67} // end namespace Belle2
68
69#endif // MODULEHELLO_H
Stream/restore DataStore objects to/from EvtMessage.
DataStoreStreamer * m_streamer
DataStore streamer.
void initialize() override
Module functions to be called from main process.
void event() override
This method is the core of the module.
void endRun() override
This method is called if the current run ends.
Ds2RawModule()
Constructor / Destructor.
void terminate() override
This method is called at the end of the event processing.
void beginRun() override
Module functions to be called from event process.
int m_nsent
No. of sent events.
int m_compressionLevel
Compression parameter.
std::string m_rbufname
RingBuffer ID.
Module()
Constructor.
Definition Module.cc:30
Class to manage a Ring Buffer placed in an IPC shared memory.
Definition RingBuffer.h:39
Abstract base class for different kinds of events.