11#include <framework/core/Module.h>
12#include <framework/pcore/RingBuffer.h>
13#include <framework/datastore/StoreObjPtr.h>
14#include <framework/core/RandomGenerator.h>
22 class DataStoreStreamer;
41 virtual void event()
override;
42 virtual void endRun()
override;
Stream/restore DataStore objects to/from EvtMessage.
Class to manage a Ring Buffer placed in an IPC shared memory.
Type-safe access to single objects in the data store.
Module for encoding data store contents into a RingBuffer.
DataStoreStreamer * m_streamer
DataStoreStreamer.
virtual void initialize() override
Module functions to be called from main process.
virtual void event() override
This method is the core of the module.
bool m_blockingInsert
Whether to block until we can insert data into the ring buffer in event().
virtual void endRun() override
This method is called if the current run ends.
virtual void terminate() override
This method is called at the end of the event processing.
RingBuffer * m_rbuf
RingBuffer (not owned by us)
virtual void beginRun() override
Called when entering a new run.
int m_nsent
No. of sent events.
StoreObjPtr< RandomGenerator > m_randomgenerator
Random Generator object to pass to RxModule.
void disableSendRandomState(bool disable=true)
Disable sending of RandomGenerator state.
bool m_handleMergeable
Whether to handle Mergeable objects.
int m_compressionLevel
Compression parameter.
void disableMergeableHandling(bool disable=true)
Disable handling of Mergeable objects.
bool m_sendRandomState
Whether to transfer the RandomGenerator state.
void setBlockingInsert(bool block)
Whether to block until we can insert data into the ring buffer in event().
Abstract base class for different kinds of events.