All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
uhd::rx_metadata_t Struct Reference

`#include <metadata.hpp>`

## Public Types

enum | error_code_t { ERROR_CODE_NONE = 0x0, ERROR_CODE_TIMEOUT = 0x1, ERROR_CODE_LATE_COMMAND = 0x2, ERROR_CODE_BROKEN_CHAIN = 0x4, ERROR_CODE_OVERFLOW = 0x8, ERROR_CODE_ALIGNMENT = 0xc, ERROR_CODE_BAD_PACKET = 0xf }

## Public Attributes

bool | has_time_spec
| Has time specification? More...
time_spec_t | time_spec
| Time of the first sample. More...
bool | more_fragments
size_t | fragment_offset
bool | start_of_burst
| Start of burst will be true for the first packet in the chain. More...
bool | end_of_burst
| End of burst will be true for the last packet in the chain. More...
enum uhd::rx_metadata_t::error_code_t | error_code

## Detailed Description

RX metadata structure for describing sent IF data. Includes time specification, fragmentation flags, burst flags, and error codes. The receive routines will convert IF data headers into metadata.

## Member Enumeration Documentation

enum uhd::rx_metadata_t::error_code_t

The error condition on a receive call.

Note: When an overrun occurs in continuous streaming mode, the device will continue to send samples to the host. For other streaming modes, streaming will discontinue until the user issues a new stream command.

The metadata fields have meaning for the following error codes:

- none
- late command
- broken chain
- overflow

Enumerator
ERROR_CODE_NONE | No error associated with this metadata.
ERROR_CODE_TIMEOUT | No packet received, implementation timed-out.
ERROR_CODE_LATE_COMMAND | A stream command was issued in the past.
ERROR_CODE_BROKEN_CHAIN | Expected another stream command.
ERROR_CODE_OVERFLOW | An internal receive buffer has filled.
ERROR_CODE_ALIGNMENT | Multi-channel alignment failed.
ERROR_CODE_BAD_PACKET | The packet could not be parsed.

## Member Data Documentation

bool uhd::rx_metadata_t::end_of_burst

End of burst will be true for the last packet in the chain.

enum uhd::rx_metadata_t::error_code_t uhd::rx_metadata_t::error_code

size_t uhd::rx_metadata_t::fragment_offset

Fragmentation offset: The fragment offset is the sample number at the start of the receive buffer. For non-fragmented receives, the fragment offset should always be zero.

bool uhd::rx_metadata_t::has_time_spec

Has time specification?

bool uhd::rx_metadata_t::more_fragments

Fragmentation flag: Similar to IPv4 fragmentation: http://en.wikipedia.org/wiki/IPv4#Fragmentation_and_reassembly More fragments is true when the input buffer has insufficient size to fit an entire received packet. More fragments will be false for the last fragment.

bool uhd::rx_metadata_t::start_of_burst

Start of burst will be true for the first packet in the chain.

time_spec_t uhd::rx_metadata_t::time_spec

Time of the first sample.

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

- include/uhd/types/metadata.hpp