This class provides methods to retrieve/store information about the cycle stamp and slot linked to that cycle stamp. More...
#include <MultiplexingDataManager.h>
Public Member Functions | |
MultiplexingDataManager () | |
Constructor. | |
virtual | ~MultiplexingDataManager () |
Destructor. | |
virtual int32_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. | |
virtual void | mapMemory (char *address)=0 |
This method maps the data that the RollingMultiplexingDataManager uses from the address passed by argument. It is implemented inside the children of this class. | |
Protected Attributes | |
int32_t * | currentCycleId_ |
this method returns the cycleId linked to the last cycle | |
AbstractMutex * | mutex_ |
mutex for all class member variables | |
int32_t * | currentSlot_ |
The slot where the data of the current cycle is stored. |
This class provides methods to retrieve/store information about the cycle stamp and slot linked to that cycle stamp.
Definition at line 17 of file MultiplexingDataManager.h.
fesa::MultiplexingDataManager::MultiplexingDataManager | ( | ) |
Constructor.
Definition at line 9 of file MultiplexingDataManager.cpp.
fesa::MultiplexingDataManager::~MultiplexingDataManager | ( | ) | [virtual] |
Destructor.
Definition at line 15 of file MultiplexingDataManager.cpp.
virtual int32_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.
Implements fesa::AbstractMultiplexingDataManager.
Implemented in fesa::HeapMultiplexingDataManager, fesa::HeapRollingMultiplexingDataManager, fesa::RollingMultiplexingDataManager, fesa::ShmMultiplexingDataManager, and fesa::ShmRollingMultiplexingDataManager.
virtual void fesa::MultiplexingDataManager::mapMemory | ( | char * | address | ) | [pure virtual] |
This method maps the data that the RollingMultiplexingDataManager uses from the address passed by argument. It is implemented inside the children of this class.
address | the memory address where the data will begin |
Implements fesa::AbstractMultiplexingDataManager.
Implemented in fesa::HeapMultiplexingDataManager, fesa::HeapRollingMultiplexingDataManager, fesa::RollingMultiplexingDataManager, fesa::ShmMultiplexingDataManager, and fesa::ShmRollingMultiplexingDataManager.
int32_t* fesa::MultiplexingDataManager::currentCycleId_ [protected] |
this method returns the cycleId linked to the last cycle
this method sets the cycleId linked to the last cycle
the | slot to be set |
this method returns the slot linked to the last cycle time stamp
this method sets the slot linked to the last cycle time stamp
the | slot to be set |
Current cycleID
Definition at line 74 of file MultiplexingDataManager.h.
Referenced by fesa::ShmMultiplexingDataManager::mapMemory(), and fesa::HeapMultiplexingDataManager::mapMemory().
int32_t* fesa::MultiplexingDataManager::currentSlot_ [protected] |
The slot where the data of the current cycle is stored.
Definition at line 84 of file MultiplexingDataManager.h.
Referenced by fesa::ShmMultiplexingDataManager::mapMemory(), and fesa::HeapMultiplexingDataManager::mapMemory().
AbstractMutex* fesa::MultiplexingDataManager::mutex_ [protected] |
mutex for all class member variables
Reimplemented in fesa::RollingMultiplexingDataManager.
Definition at line 79 of file MultiplexingDataManager.h.
Referenced by fesa::ShmMultiplexingDataManager::mapMemory(), and fesa::HeapMultiplexingDataManager::mapMemory().