aggregator
Public Member Functions | Public Attributes | List of all members
aggregator::StreamStatus Struct Reference

#include <StreamAlignerStatus.hpp>

Public Member Functions

 StreamStatus ()
 

Public Attributes

size_t buffer_size
 
size_t buffer_fill
 
size_t samples_received
 
size_t samples_processed
 
size_t samples_dropped_buffer_full
 
size_t samples_dropped_late_arriving
 
size_t samples_backward_in_time
 
base::Time latest_data_time
 
base::Time earliest_data_time
 
base::Time latest_sample_time
 
bool active
 
std::string name
 
int64_t priority
 

Detailed Description

Debugging structure used to report about the status of a single stream in a stream aligner

Constructor & Destructor Documentation

◆ StreamStatus()

aggregator::StreamStatus::StreamStatus ( )
inline

Member Data Documentation

◆ active

bool aggregator::StreamStatus::active

True if the stream is being used by the stream aligner

◆ buffer_fill

size_t aggregator::StreamStatus::buffer_fill

How many samples are currently waiting inside the stream buffer

◆ buffer_size

size_t aggregator::StreamStatus::buffer_size

The actual size of the buffer

◆ earliest_data_time

base::Time aggregator::StreamStatus::earliest_data_time

Time of the oldest sample currently stored in the stream buffer. Null time if the stream is empty

◆ latest_data_time

base::Time aggregator::StreamStatus::latest_data_time

Time of the newest sample currently stored in the stream buffer. Null time if the stream is empty

◆ latest_sample_time

base::Time aggregator::StreamStatus::latest_sample_time

Time of the last sample received for this stream, regardless of whether it has been dropped or pushed to the stream

◆ name

std::string aggregator::StreamStatus::name

The stream name. In the case of the oroGen plugin, this is set to the port name

◆ priority

int64_t aggregator::StreamStatus::priority

The priority at which this stream is processed. When samples of the same timestamp are available on two different streams, the stream with the lower priority value is processed first.

◆ samples_backward_in_time

size_t aggregator::StreamStatus::samples_backward_in_time

Count of samples dropped because their timestamp was not properly ordered

I.e. samples for which the timestamp was later than the previous sample received for that stream

◆ samples_dropped_buffer_full

size_t aggregator::StreamStatus::samples_dropped_buffer_full

Count of samples dropped because the buffer was full

Should be zero on streams that have dynamically resized buffers

◆ samples_dropped_late_arriving

size_t aggregator::StreamStatus::samples_dropped_late_arriving

Count of samples dropped because their timestamp was earlier than the stream aligner current time

◆ samples_processed

size_t aggregator::StreamStatus::samples_processed

The total count of samples ever processed by the callbacks of this stream

The total number of samples ever received is

samples_processed + samples_dropped_buffer_full + samples_dropped_late_arriving

◆ samples_received

size_t aggregator::StreamStatus::samples_received

The total number of samples ever received for that stream

The following relationship should hold:

samples_received == samples_processed + samples_dropped_buffer_full + samples_dropped_late_arriving


The documentation for this struct was generated from the following file: