18 #ifndef INCLUDED_UHD_TRANSPORT_VRT_IF_PACKET_HPP 19 #define INCLUDED_UHD_TRANSPORT_VRT_IF_PACKET_HPP 22 #include <boost/cstdint.hpp> 25 namespace uhd{
namespace transport{
30 static const size_t num_vrl_words32 = 3;
33 static const size_t max_if_hdr_words32 = 7;
56 PACKET_TYPE_DATA = 0x0,
57 PACKET_TYPE_IF_EXT = 0x1,
58 PACKET_TYPE_CONTEXT = 0x2,
63 PACKET_TYPE_ACK = 0x1,
64 PACKET_TYPE_CMD = 0x2,
65 PACKET_TYPE_RESP = 0x3,
66 PACKET_TYPE_ERROR = 0x3
84 bool has_sid; boost::uint32_t
sid;
88 bool has_tsi; boost::uint32_t
tsi;
90 bool has_tsf; boost::uint64_t
tsf;
92 bool has_tlr; boost::uint32_t
tlr;
121 boost::uint32_t *packet_buff,
159 const boost::uint32_t *packet_buff,
172 boost::uint32_t *packet_buff,
185 const boost::uint32_t *packet_buff,
190 link_type(LINK_TYPE_NONE),
191 packet_type(PACKET_TYPE_DATA),
192 num_payload_words32(0),
193 num_payload_bytes(0),
194 num_header_words32(0),
195 num_packet_words32(0),
197 sob(false), eob(false),
199 has_sid(false), sid(0),
200 has_cid(false), cid(0),
201 has_tsi(false), tsi(0),
202 has_tsf(false), tsf(0),
203 has_tlr(false), tlr(0)
boost::uint32_t tlr
Definition: vrt_if_packet.hpp:92
Definition: vrt_if_packet.hpp:40
boost::uint32_t tsi
Definition: vrt_if_packet.hpp:88
size_t num_packet_words32
Definition: vrt_if_packet.hpp:73
UHD_API void if_hdr_pack_le(boost::uint32_t *packet_buff, if_packet_info_t &if_packet_info)
if_packet_info_t(void)
Definition: vrt_if_packet.hpp:189
packet_type_t
Definition: vrt_if_packet.hpp:53
boost::uint64_t tsf
Definition: vrt_if_packet.hpp:90
bool has_cid
Class ID.
Definition: vrt_if_packet.hpp:86
link_type_t
Definition: vrt_if_packet.hpp:45
UHD_API void if_hdr_unpack_be(const boost::uint32_t *packet_buff, if_packet_info_t &if_packet_info)
UHD_API void if_hdr_pack_be(boost::uint32_t *packet_buff, if_packet_info_t &if_packet_info)
Definition: build_info.hpp:25
bool error
This is asserted for command responses that are errors (CHDR only)
Definition: vrt_if_packet.hpp:80
size_t num_payload_bytes
Definition: vrt_if_packet.hpp:71
#define UHD_INLINE
Definition: config.h:63
UHD_API void if_hdr_unpack_le(const boost::uint32_t *packet_buff, if_packet_info_t &if_packet_info)
size_t packet_count
Definition: vrt_if_packet.hpp:76
#define UHD_API
Definition: config.h:73
size_t num_payload_words32
Definition: vrt_if_packet.hpp:70
size_t num_header_words32
Definition: vrt_if_packet.hpp:72
bool sob
Asserted for start- or end-of-burst.
Definition: vrt_if_packet.hpp:78
boost::uint32_t sid
Definition: vrt_if_packet.hpp:84