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 {
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.
A class definition of an input module for Sequential ROOT I/O.
Definition: Ds2RawModule.h:30
DataStoreStreamer * m_streamer
DataStore streamer.
Definition: Ds2RawModule.h:59
void initialize() override
Module functions to be called from main process.
Definition: Ds2RawModule.cc:55
void event() override
This method is the core of the module.
Definition: Ds2RawModule.cc:75
void endRun() override
This method is called if the current run ends.
Ds2RawModule()
Constructor / Destructor.
Definition: Ds2RawModule.cc:32
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.
Definition: Ds2RawModule.cc:69
int m_nsent
No. of sent events.
Definition: Ds2RawModule.h:62
int m_compressionLevel
Compression parameter.
Definition: Ds2RawModule.h:52
std::string m_rbufname
RingBuffer ID.
Definition: Ds2RawModule.h:55
Base class for Modules.
Definition: Module.h:72
Class to manage a Ring Buffer placed in an IPC shared memory.
Definition: RingBuffer.h:39
Abstract base class for different kinds of events.