This class extends the AbstractMultiplexingManager in order to provide a rolling multiplexing manager (explanation of "rolling" see class RollingDataManager)
More...
#include <RollingBufferMuxManager.h>
|
int32_t | getLastSlot (const std::string &cycleName) |
| This method returns the slot in which the last value for the virtual accelerator passed by argument was stored. More...
|
|
int32_t | requireSlot (const std::string &cycleName) |
| This method returns the next slot in which the value of a field will be stored. More...
|
|
int32_t | getLastSlot (int32_t cycleId) |
| This method returns the slot in which the last value for the virtual accelerator passed by argument was stored. More...
|
|
int32_t | requireSlot (int32_t cycleId) |
| This method returns the next slot in which the value of a field will be stored. More...
|
|
| AbstractMultiplexingManager (const CycleDescriptor *timingDescriptor) |
| Constructor. More...
|
|
This class extends the AbstractMultiplexingManager in order to provide a rolling multiplexing manager (explanation of "rolling" see class RollingDataManager)
int32_t fesa::RollingBufferMuxManager::getClosestSlot |
( |
timestamp_ns |
timestamp | ) |
|
|
virtual |
int32_t fesa::RollingBufferMuxManager::getClosestSlot |
( |
const std::string & |
cycleName, |
|
|
timestamp_ns |
timestamp |
|
) |
| |
|
virtual |
Returns the slot closest to the given timestamp whose cycle matches cycleName.
- Parameters
-
cycleName | the name of the cycle to look for |
timestamp | the timestamp to look for |
Reimplemented from fesa::AbstractMultiplexingManager.
int32_t fesa::RollingBufferMuxManager::getDepth |
( |
| ) |
|
|
inlinevirtual |
int32_t fesa::RollingBufferMuxManager::getLastSlot |
( |
const std::string & |
cycleName | ) |
|
|
protectedvirtual |
This method returns the slot in which the last value for the virtual accelerator passed by argument was stored.
- Parameters
-
cycleId | the ID of the cycle for the requested slot |
- Returns
- the last slot used by the requested cycle
Implements fesa::AbstractMultiplexingManager.
int32_t fesa::RollingBufferMuxManager::getLastSlot |
( |
int32_t |
cycleId | ) |
|
|
protectedvirtual |
This method returns the slot in which the last value for the virtual accelerator passed by argument was stored.
- Parameters
-
cycleId | the ID of the cycle for the requested slot |
- Returns
- the last slot used by the requested cycle
Implements fesa::AbstractMultiplexingManager.
int32_t fesa::RollingBufferMuxManager::getSlotByCycleName |
( |
const std::string & |
cycleName | ) |
|
|
virtual |
int32_t fesa::RollingBufferMuxManager::getSlotByTimeStamp |
( |
int64_t |
timeStamp | ) |
|
|
virtual |
void fesa::RollingBufferMuxManager::mapMemory |
( |
char *& |
address, |
|
|
bool |
first, |
|
|
std::ostream & |
logStream |
|
) |
| |
|
virtual |
Maps shared fields to the memory pointed to by address.
- Parameters
-
[in,out] | address | address where to map shared fields. It is updated to point to the byte following the last byte mapped. |
| first | true if this is the first process to map the shared fields |
| logStream | stream on which details of the mapping are output |
Reimplemented from fesa::AbstractMultiplexingManager.
This method returns the next slot in which the value of a field will be stored.
- Parameters
-
context | the multiplexing context for which a slot is requested |
- Returns
- the slot where the data can be stored
Implements fesa::AbstractMultiplexingManager.
int32_t fesa::RollingBufferMuxManager::requireSlot |
( |
const std::string & |
cycleName | ) |
|
|
protectedvirtual |
This method returns the next slot in which the value of a field will be stored.
- Parameters
-
cycleId | the ID of the cycle for the requested slot |
- Returns
- the slot where data can be stored
Implements fesa::AbstractMultiplexingManager.
int32_t fesa::RollingBufferMuxManager::requireSlot |
( |
int32_t |
cycleId | ) |
|
|
protectedvirtual |
This method returns the next slot in which the value of a field will be stored.
- Parameters
-
cycleId | the ID of the cycle for the requested slot |
- Returns
- the slot where data can be stored
Implements fesa::AbstractMultiplexingManager.
The documentation for this class was generated from the following files:
- RollingBufferMuxManager.h
- RollingBufferMuxManager.cpp