Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
roc::rtcp::header::XrDelayMetricsBlock Class Reference

XR Delay Metrics Block. More...

#include <headers.h>

Public Member Functions

void reset ()
 Reset to initial state (all zeros). More...
 
const XrBlockHeaderheader () const
 Get common block header. More...
 
XrBlockHeaderheader ()
 Get common block header. More...
 
MetricFlag metric_flag () const
 Get Interval Metrics flag. More...
 
void set_metric_flag (const MetricFlag f)
 Set Interval Metrics flag. More...
 
packet::stream_source_t ssrc () const
 Get SSRC of source being reported. More...
 
void set_ssrc (const packet::stream_source_t ssrc)
 Set SSRC of source being reported. More...
 
bool has_mean_rtt () const
 Check if Mean Network Round-Trip Delay is set. More...
 
packet::ntp_timestamp_t mean_rtt () const
 Get Mean Network Round-Trip Delay. More...
 
void set_mean_rtt (const packet::ntp_timestamp_t x)
 Set Mean Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp. More...
 
bool has_min_rtt () const
 Check if Minimum Network Round-Trip Delay is set. More...
 
packet::ntp_timestamp_t min_rtt () const
 Get Minimum Network Round-Trip Delay. More...
 
void set_min_rtt (const packet::ntp_timestamp_t x)
 Set Minimum Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp. More...
 
bool has_max_rtt () const
 Check if Maximum Network Round-Trip Delay is set. More...
 
packet::ntp_timestamp_t max_rtt () const
 Get Maximum Network Round-Trip Delay. More...
 
void set_max_rtt (const packet::ntp_timestamp_t x)
 Set Maximum Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp. More...
 
bool has_e2e_latency () const
 Check if End System Delay is set. More...
 
packet::ntp_timestamp_t e2e_latency () const
 Get End System Delay. More...
 
void set_e2e_latency (const packet::ntp_timestamp_t t)
 Set End System Delay. More...
 

Detailed Description

XR Delay Metrics Block.

RFC 6843 3.1: "Report Block Structure"

0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BT=16 | I | resv. | block length = 6 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of Source |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mean Network Round-Trip Delay |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Min Network Round-Trip Delay |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Max Network Round-Trip Delay |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| End System Delay - Seconds (bit 0-31) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| End System Delay - Fraction (bit 0-31) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
@ Source
Source packet header of footer.
Definition: headers.h:26

Definition at line 1515 of file headers.h.

Member Function Documentation

◆ e2e_latency()

packet::ntp_timestamp_t roc::rtcp::header::XrDelayMetricsBlock::e2e_latency ( ) const
inline

Get End System Delay.

Definition at line 1632 of file headers.h.

◆ has_e2e_latency()

bool roc::rtcp::header::XrDelayMetricsBlock::has_e2e_latency ( ) const
inline

Check if End System Delay is set.

Definition at line 1627 of file headers.h.

◆ has_max_rtt()

bool roc::rtcp::header::XrDelayMetricsBlock::has_max_rtt ( ) const
inline

Check if Maximum Network Round-Trip Delay is set.

Definition at line 1611 of file headers.h.

◆ has_mean_rtt()

bool roc::rtcp::header::XrDelayMetricsBlock::has_mean_rtt ( ) const
inline

Check if Mean Network Round-Trip Delay is set.

Definition at line 1579 of file headers.h.

◆ has_min_rtt()

bool roc::rtcp::header::XrDelayMetricsBlock::has_min_rtt ( ) const
inline

Check if Minimum Network Round-Trip Delay is set.

Definition at line 1595 of file headers.h.

◆ header() [1/2]

XrBlockHeader& roc::rtcp::header::XrDelayMetricsBlock::header ( )
inline

Get common block header.

Definition at line 1551 of file headers.h.

◆ header() [2/2]

const XrBlockHeader& roc::rtcp::header::XrDelayMetricsBlock::header ( ) const
inline

Get common block header.

Definition at line 1546 of file headers.h.

◆ max_rtt()

packet::ntp_timestamp_t roc::rtcp::header::XrDelayMetricsBlock::max_rtt ( ) const
inline

Get Maximum Network Round-Trip Delay.

Definition at line 1616 of file headers.h.

◆ mean_rtt()

packet::ntp_timestamp_t roc::rtcp::header::XrDelayMetricsBlock::mean_rtt ( ) const
inline

Get Mean Network Round-Trip Delay.

Definition at line 1584 of file headers.h.

◆ metric_flag()

MetricFlag roc::rtcp::header::XrDelayMetricsBlock::metric_flag ( ) const
inline

Get Interval Metrics flag.

Definition at line 1556 of file headers.h.

◆ min_rtt()

packet::ntp_timestamp_t roc::rtcp::header::XrDelayMetricsBlock::min_rtt ( ) const
inline

Get Minimum Network Round-Trip Delay.

Definition at line 1600 of file headers.h.

◆ reset()

void roc::rtcp::header::XrDelayMetricsBlock::reset ( )
inline

Reset to initial state (all zeros).

Definition at line 1536 of file headers.h.

◆ set_e2e_latency()

void roc::rtcp::header::XrDelayMetricsBlock::set_e2e_latency ( const packet::ntp_timestamp_t  t)
inline

Set End System Delay.

Definition at line 1637 of file headers.h.

◆ set_max_rtt()

void roc::rtcp::header::XrDelayMetricsBlock::set_max_rtt ( const packet::ntp_timestamp_t  x)
inline

Set Maximum Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp.

Definition at line 1622 of file headers.h.

◆ set_mean_rtt()

void roc::rtcp::header::XrDelayMetricsBlock::set_mean_rtt ( const packet::ntp_timestamp_t  x)
inline

Set Mean Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp.

Definition at line 1590 of file headers.h.

◆ set_metric_flag()

void roc::rtcp::header::XrDelayMetricsBlock::set_metric_flag ( const MetricFlag  f)
inline

Set Interval Metrics flag.

Definition at line 1562 of file headers.h.

◆ set_min_rtt()

void roc::rtcp::header::XrDelayMetricsBlock::set_min_rtt ( const packet::ntp_timestamp_t  x)
inline

Set Minimum Network Round-Trip Delay. Stores only the middle 32 bits out of 64 in the NTP timestamp.

Definition at line 1606 of file headers.h.

◆ set_ssrc()

void roc::rtcp::header::XrDelayMetricsBlock::set_ssrc ( const packet::stream_source_t  ssrc)
inline

Set SSRC of source being reported.

Definition at line 1574 of file headers.h.

◆ ssrc()

packet::stream_source_t roc::rtcp::header::XrDelayMetricsBlock::ssrc ( ) const
inline

Get SSRC of source being reported.

Definition at line 1569 of file headers.h.


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