Loading...
Searching...
No Matches
uhd::rfnoc::chdr::strs_payload Class Reference

`#include <uhd/rfnoc/chdr_types.hpp>`

## Public Member Functions

| strs_payload ()=default
| strs_payload (const strs_payload &rhs)=default
| strs_payload (strs_payload &&rhs)=default
strs_payload & | operator= (const strs_payload &rhs)=default
void | populate_header (chdr_header &header) const
| Populate the header for this type of packet.
size_t | serialize (uint64_t *buff, size_t max_size_bytes, const std::function< uint64_t(uint64_t)> &conv_byte_order) const
| Serialize the payload to a uint64_t buffer.
template<endianness_t endianness>
size_t | serialize (uint64_t *buff, size_t max_size_bytes) const
| Serialize the payload to a uint64_t buffer (no conversion function).
void | deserialize (const uint64_t *buff, size_t buff_size, const std::function< uint64_t(uint64_t)> &conv_byte_order)
template<endianness_t endianness>
void | deserialize (const uint64_t *buff, size_t buff_size)
size_t | get_length () const
| Get the serialized size of this payload in 64 bit words.
bool | operator== (const strs_payload &rhs) const
| Comparison operator (==).
bool | operator!= (const strs_payload &rhs) const
| Comparison operator (!=).
std::string | to_string () const
| Return a string representation of this object.

## Public Attributes

uint16_t | src_epid = 0
| The source EPID for the stream (16 bits).
strs_status_t | status = STRS_OKAY
| The status of the stream (4 bits).
uint64_t | capacity_bytes = 0
| Buffer capacity in bytes (40 bits).
uint32_t | capacity_pkts = 0
| Buffer capacity in packets (24 bits).
uint64_t | xfer_count_bytes = 0
| Transfer count in bytes (64 bits).
uint64_t | xfer_count_pkts = 0
| Transfer count in packets (40 bits).
uint16_t | buff_info = 0
| Buffer info (16 bits).
union { |
uint64_t info = 0 |
struct { |
uint16_t last_control_seq_num: 16 |
uint16_t expected_seq_num: 16 |
uint16_t reserved_1: 12 |
bool stop_on_seq_error_enabled: 1 |
bool seq_error_occoured: 1 |
bool reserved_2: 1 |
bool flow_control_due: 1 |
} status
struct { |
uint16_t current_seq_num: 16 |
uint16_t expected_seq_num: 16 |
uint8_t chdr_packet_type: 3 |
uint16_t reserved_1: 9 |
bool stop_on_seq_error_enabled: 1 |
bool seq_error_occoured: 1 |
bool reserved_2: 1 |
bool reserved_3: 1 |
} sequence_error
struct { |
uint16_t dest_epid: 16 |
uint16_t this_epid: 16 |
uint32_t reserved_1: 32 |
} routing_error
} | status_info
| Extended status info (48 bits).

## Constructor & Destructor Documentation

## strs_payload() [1/3]

uhd::rfnoc::chdr::strs_payload::strs_payload | ( |  | ) |

default

## strs_payload() [2/3]

uhd::rfnoc::chdr::strs_payload::strs_payload | ( | const strs_payload & | rhs | ) |

default

## strs_payload() [3/3]

uhd::rfnoc::chdr::strs_payload::strs_payload | ( | strs_payload && | rhs | ) |

default

## Member Function Documentation

## deserialize() [1/2]

template<endianness_t endianness>

void uhd::rfnoc::chdr::strs_payload::deserialize | ( | const uint64_t * | buff,
|  | size_t | buff_size )

inline

Deserialize the payload from a uint64_t buffer (no conversion function)

Parameters

  buff | Buffer to deserialize the payload from
  buff_size | Number of elements in the buffer

## deserialize() [2/2]

void uhd::rfnoc::chdr::strs_payload::deserialize | ( | const uint64_t * | buff,
|  | size_t | buff_size,
|  | const std::function< uint64_t(uint64_t)> & | conv_byte_order )

Deserialize the payload from a uint64_t buffer

Parameters

  buff | Buffer to deserialize the payload from
  buff_size | Number of elements in the buffer
  conv_byte_order | Byte order converter function (buffer to host endianness)

## get_length()

size_t uhd::rfnoc::chdr::strs_payload::get_length | ( |  | ) | const

Get the serialized size of this payload in 64 bit words.

## operator!=()

bool uhd::rfnoc::chdr::strs_payload::operator!= | ( | const strs_payload & | rhs | ) | const

inline

Comparison operator (!=).

## operator=()

strs_payload & uhd::rfnoc::chdr::strs_payload::operator= | ( | const strs_payload & | rhs | ) |

default

## operator==()

bool uhd::rfnoc::chdr::strs_payload::operator== | ( | const strs_payload & | rhs | ) | const

Comparison operator (==).

## populate_header()

void uhd::rfnoc::chdr::strs_payload::populate_header | ( | chdr_header & | header | ) | const

Populate the header for this type of packet.

## serialize() [1/2]

template<endianness_t endianness>

size_t uhd::rfnoc::chdr::strs_payload::serialize | ( | uint64_t * | buff,
|  | size_t | max_size_bytes ) const

inline

Serialize the payload to a uint64_t buffer (no conversion function).

## serialize() [2/2]

size_t uhd::rfnoc::chdr::strs_payload::serialize | ( | uint64_t * | buff,
|  | size_t | max_size_bytes,
|  | const std::function< uint64_t(uint64_t)> & | conv_byte_order ) const

Serialize the payload to a uint64_t buffer.

## to_string()

std::string uhd::rfnoc::chdr::strs_payload::to_string | ( |  | ) | const

Return a string representation of this object.

## Member Data Documentation

## buff_info

uint16_t uhd::rfnoc::chdr::strs_payload::buff_info = 0

Buffer info (16 bits).

## capacity_bytes

uint64_t uhd::rfnoc::chdr::strs_payload::capacity_bytes = 0

Buffer capacity in bytes (40 bits).

## capacity_pkts

uint32_t uhd::rfnoc::chdr::strs_payload::capacity_pkts = 0

Buffer capacity in packets (24 bits).

## chdr_packet_type

uint8_t uhd::rfnoc::chdr::strs_payload::chdr_packet_type

## current_seq_num

uint16_t uhd::rfnoc::chdr::strs_payload::current_seq_num

## dest_epid

uint16_t uhd::rfnoc::chdr::strs_payload::dest_epid

## expected_seq_num

uint16_t uhd::rfnoc::chdr::strs_payload::expected_seq_num

## flow_control_due

bool uhd::rfnoc::chdr::strs_payload::flow_control_due

## info

uint64_t uhd::rfnoc::chdr::strs_payload::info = 0

## last_control_seq_num

uint16_t uhd::rfnoc::chdr::strs_payload::last_control_seq_num

## reserved_1 [1/2]

uint32_t uhd::rfnoc::chdr::strs_payload::reserved_1

## reserved_1 [2/2]

uint16_t uhd::rfnoc::chdr::strs_payload::reserved_1

## reserved_2

bool uhd::rfnoc::chdr::strs_payload::reserved_2

## reserved_3

bool uhd::rfnoc::chdr::strs_payload::reserved_3

## [struct]

struct { ... } uhd::rfnoc::chdr::strs_payload::routing_error

## seq_error_occoured

bool uhd::rfnoc::chdr::strs_payload::seq_error_occoured

## [struct]

struct { ... } uhd::rfnoc::chdr::strs_payload::sequence_error

## src_epid

uint16_t uhd::rfnoc::chdr::strs_payload::src_epid = 0

The source EPID for the stream (16 bits).

## [struct] [1/2]

struct { ... } uhd::rfnoc::chdr::strs_payload::status

## status [2/2]

strs_status_t uhd::rfnoc::chdr::strs_payload::status = STRS_OKAY

The status of the stream (4 bits).

## [union]

union { ... } uhd::rfnoc::chdr::strs_payload::status_info

Extended status info (48 bits).

## stop_on_seq_error_enabled

bool uhd::rfnoc::chdr::strs_payload::stop_on_seq_error_enabled

## this_epid

uint16_t uhd::rfnoc::chdr::strs_payload::this_epid

## xfer_count_bytes

uint64_t uhd::rfnoc::chdr::strs_payload::xfer_count_bytes = 0

Transfer count in bytes (64 bits).

## xfer_count_pkts

uint64_t uhd::rfnoc::chdr::strs_payload::xfer_count_pkts = 0

Transfer count in packets (40 bits).

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

- chdr_types.hpp