A class that represents a complete multi-hop management transaction. More...
#include <uhd/rfnoc/chdr_types.hpp>
Public Member Functions | |
| mgmt_payload ()=default | |
| mgmt_payload (const mgmt_payload &rhs)=default | |
| mgmt_payload (mgmt_payload &&rhs)=default | |
| mgmt_payload & | operator= (const mgmt_payload &rhs)=default |
| void | set_header (sep_id_t src_epid, uint16_t protover, chdr_w_t chdr_w) |
| void | add_hop (const mgmt_hop_t &hop) |
| Add a management hop to this transaction. More... | |
| size_t | get_num_hops () const |
| Get the number of management hops in this hop. More... | |
| const mgmt_hop_t & | get_hop (size_t i) const |
| Get the n'th hop in the transaction. More... | |
| mgmt_hop_t | pop_hop () |
| Pop the first hop of the transaction and return it. More... | |
| size_t | get_size_bytes () const |
| void | populate_header (chdr_header &header) const |
| Populate the header for this type of packet. More... | |
| 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. More... | |
| 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) More... | |
| void | deserialize (const uint64_t *buff, size_t num_elems, const std::function< uint64_t(uint64_t)> &conv_byte_order) |
| Deserialize the payload from a uint64_t buffer. More... | |
| template<endianness_t endianness> | |
| void | deserialize (const uint64_t *buff, size_t num_elems) |
| Deserialize the payload from a uint64_t buffer (no conversion function) More... | |
| size_t | get_length () const |
| Get the serialized size of this payload in 64 bit words. More... | |
| const std::string | to_string () const |
| Return a string representation of this object. More... | |
| const std::string | hops_to_string () const |
| Return a string representaiton of the hops contained by this object. More... | |
| sep_id_t | get_src_epid () const |
| Return the source EPID for this transaction. More... | |
| void | set_src_epid (sep_id_t src_epid) |
| Set the source EPID for this transaction. More... | |
| bool | operator== (const mgmt_payload &rhs) const |
| Comparison operator (==) More... | |
| chdr_w_t | get_chdr_w () const |
| Return the CHDR_W for this transaction. More... | |
| void | set_chdr_w (chdr_w_t chdr_w) |
| Set the CHDR_W for this transaction. More... | |
| uint16_t | get_proto_ver () const |
| Return the protocol version for this transaction. More... | |
| void | set_proto_ver (uint16_t proto_ver) |
| Set the protocol version for this transaction. More... | |
A class that represents a complete multi-hop management transaction.
|
default |
|
default |
|
default |
|
inline |
Add a management hop to this transaction.
|
inline |
Deserialize the payload from a uint64_t buffer (no conversion function)
| void uhd::rfnoc::chdr::mgmt_payload::deserialize | ( | const uint64_t * | buff, |
| size_t | num_elems, | ||
| const std::function< uint64_t(uint64_t)> & | conv_byte_order | ||
| ) |
Deserialize the payload from a uint64_t buffer.
|
inline |
Return the CHDR_W for this transaction.
|
inline |
Get the n'th hop in the transaction.
| size_t uhd::rfnoc::chdr::mgmt_payload::get_length | ( | ) | const |
Get the serialized size of this payload in 64 bit words.
|
inline |
Get the number of management hops in this hop.
|
inline |
Return the protocol version for this transaction.
|
inline |
|
inline |
Return the source EPID for this transaction.
| const std::string uhd::rfnoc::chdr::mgmt_payload::hops_to_string | ( | ) | const |
Return a string representaiton of the hops contained by this object.
|
default |
| bool uhd::rfnoc::chdr::mgmt_payload::operator== | ( | const mgmt_payload & | rhs | ) | const |
Comparison operator (==)
|
inline |
Pop the first hop of the transaction and return it.
| void uhd::rfnoc::chdr::mgmt_payload::populate_header | ( | chdr_header & | header | ) | const |
Populate the header for this type of packet.
|
inline |
Serialize the payload to a uint64_t buffer (no conversion function)
| size_t uhd::rfnoc::chdr::mgmt_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.
|
inline |
Set the CHDR_W for this transaction.
|
inline |
|
inline |
Set the protocol version for this transaction.
|
inline |
Set the source EPID for this transaction.
| const std::string uhd::rfnoc::chdr::mgmt_payload::to_string | ( | ) | const |
Return a string representation of this object.