Class BatchSequenceBypass

Class Documentation

class ral::batch::BatchSequenceBypass

This data sequencer works as a bypass to take data from one input to an output without decacheing.

Public Functions

BatchSequenceBypass(std::shared_ptr<ral::cache::CacheMachine> cache = nullptr, const ral::cache::kernel *kernel = nullptr)

Constructor for the BatchSequenceBypass

Parameters
  • cache: The input cache from where the data will be pulled.

  • kernel: The kernel that will actually receive the pulled data.

void set_source(std::shared_ptr<ral::cache::CacheMachine> cache)

Updates the input cache machine.

Parameters
  • cache: The pointer to the new input cache.

std::unique_ptr<ral::cache::CacheData> next()

Get the next message as a CacheData object.

Return

CacheData containing the next message without decacheing.

bool wait_for_next()

Blocks executing thread until a new message is ready or when the message queue is empty.

Return

true A new message is ready.

Return

false There are no more messages on the cache.

bool has_next_now()

Indicates if the message queue is not empty at this point on time.

Return

true There is at least one message in the queue.

Return

false Message queue is empty.