holoscan::DataLoggerQueue
holoscan::DataLoggerQueue
holoscan::DataLoggerQueue
Abstract base class for data logger queues.
This interface allows different queue implementations to be used by AsyncDataLoggerResource, enabling trade-offs between performance and ordering guarantees.
All implementations must be thread-safe for concurrent access from multiple producers and a single consumer (MPSC - Multiple Producer Single Consumer).
Template parameters
The type of elements stored in the queue (typically DataEntry)
Attempt to enqueue an item (thread-safe).
Returns: true if successfully enqueued, false if queue is full
Parameters
The item to enqueue (will be moved)
Attempt to dequeue an item (thread-safe).
Returns: true if an item was dequeued, false if queue is empty
Parameters
Output parameter where the dequeued item will be moved
Get size of the queue (thread-safe).
Note: The accuracy of this value depends on the implementation:
Returns: Number of items in the queue (approximation or exact, depending on implementation)