fesa-core  5.0.1
fesa::MultiplexingDataManager Class Referenceabstract

This class provides methods to retrieve/store information about the cycle stamp and slot linked to that cycle stamp. More...

#include <MultiplexingDataManager.h>

Inheritance diagram for fesa::MultiplexingDataManager:
fesa::AbstractMultiplexingDataManager fesa::HeapMultiplexingDataManager fesa::RollingBufferMuxDataManager fesa::ShmMultiplexingDataManager fesa::HeapRollingBufferMuxDataManager fesa::ShmRollingBufferMuxDataManager

Public Member Functions

 MultiplexingDataManager ()
 Constructor.
 
virtual ~MultiplexingDataManager ()
 Destructor.
 
virtual std::size_t computeMemorySize ()=0
 This method returns the number of bytes which are necessary to store the date of the class. It is implemented inside the children of this class. More...
 
virtual void mapMemory (char *address, bool first)=0
 
- Public Member Functions inherited from fesa::AbstractMultiplexingDataManager
virtual ~AbstractMultiplexingDataManager ()
 Destructor.
 

Protected Attributes

Mutexmutex_
 mutex for all class member variables
 

Detailed Description

This class provides methods to retrieve/store information about the cycle stamp and slot linked to that cycle stamp.

Member Function Documentation

virtual std::size_t fesa::MultiplexingDataManager::computeMemorySize ( )
pure virtual

This method returns the number of bytes which are necessary to store the date of the class. It is implemented inside the children of this class.

Returns
the number of bytes computed

Implements fesa::AbstractMultiplexingDataManager.

Implemented in fesa::RollingBufferMuxDataManager, fesa::HeapRollingBufferMuxDataManager, fesa::ShmRollingBufferMuxDataManager, fesa::HeapMultiplexingDataManager, and fesa::ShmMultiplexingDataManager.

virtual void fesa::MultiplexingDataManager::mapMemory ( char *  address,
bool  first 
)
pure virtual

Maps shared fields to the memory pointed to by pAddr.

Parameters
addressaddress where to map shared fields
firsttrue if this is the first process to map the shared fields

Implements fesa::AbstractMultiplexingDataManager.

Implemented in fesa::RollingBufferMuxDataManager, fesa::HeapRollingBufferMuxDataManager, fesa::ShmRollingBufferMuxDataManager, fesa::HeapMultiplexingDataManager, and fesa::ShmMultiplexingDataManager.


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