evio  6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
evio::RecordCompressor Class Reference

Class used to create a thread which takes data-filled records from a RingBuffer-backed RecordSupply, compresses them, and places them back into the supply. More...

#include <RecordCompressor.h>

Public Member Functions

 RecordCompressor (uint32_t thdNum, Compressor::CompressionType &type, std::shared_ptr< RecordSupply > &recordSupply)
 Constructor. More...
 
 RecordCompressor (RecordCompressor &&obj) noexcept
 
RecordCompressoroperator= (RecordCompressor &&obj) noexcept
 
 ~RecordCompressor ()
 
void startThread ()
 Create and start a thread to execute the run() method of this class. More...
 
void stopThread ()
 Stop the thread. More...
 
void run ()
 Method to run in the thread. More...
 

Detailed Description

Class used to create a thread which takes data-filled records from a RingBuffer-backed RecordSupply, compresses them, and places them back into the supply.

It is an interruptible thread from the boost library. This of use internally only.

Date
01/22/2020
Author
timmer

Constructor & Destructor Documentation

evio::RecordCompressor::RecordCompressor ( uint32_t  thdNum,
Compressor::CompressionType type,
std::shared_ptr< RecordSupply > &  recordSupply 
)
inline

Constructor.

Parameters
thdNumunique thread number starting at 0.
typetype of compression to do.
recordSupplysupply of records to compress.
evio::RecordCompressor::RecordCompressor ( RecordCompressor &&  obj)
inlinenoexcept
evio::RecordCompressor::~RecordCompressor ( )
inline

Member Function Documentation

RecordCompressor& evio::RecordCompressor::operator= ( RecordCompressor &&  obj)
inlinenoexcept
void evio::RecordCompressor::run ( )
inline

Method to run in the thread.

Referenced by startThread().

void evio::RecordCompressor::startThread ( )
inline

Create and start a thread to execute the run() method of this class.

References run().

void evio::RecordCompressor::stopThread ( )
inline

Stop the thread.


The documentation for this class was generated from the following file: