aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/include/uhdlib
diff options
context:
space:
mode:
Diffstat (limited to 'host/lib/include/uhdlib')
-rw-r--r--host/lib/include/uhdlib/transport/link_if.hpp18
-rw-r--r--host/lib/include/uhdlib/transport/nirio_link.hpp18
2 files changed, 36 insertions, 0 deletions
diff --git a/host/lib/include/uhdlib/transport/link_if.hpp b/host/lib/include/uhdlib/transport/link_if.hpp
index 6f533603e..55755948c 100644
--- a/host/lib/include/uhdlib/transport/link_if.hpp
+++ b/host/lib/include/uhdlib/transport/link_if.hpp
@@ -57,6 +57,15 @@ public:
*/
virtual adapter_id_t get_send_adapter_id() const = 0;
+ /*!
+ * Returns whether this link type supports releasing the frame buffers
+ * in an order different from that in which they were acquired.
+ */
+ virtual bool supports_send_buff_out_of_order() const
+ {
+ return true;
+ }
+
send_link_if() = default;
send_link_if(const send_link_if&) = delete;
send_link_if& operator=(const send_link_if&) = delete;
@@ -102,6 +111,15 @@ public:
*/
virtual adapter_id_t get_recv_adapter_id() const = 0;
+ /*!
+ * Returns whether this link type supports releasing the frame buffers
+ * in an order different from that in which they were acquired.
+ */
+ virtual bool supports_recv_buff_out_of_order() const
+ {
+ return true;
+ }
+
recv_link_if() = default;
recv_link_if(const recv_link_if&) = delete;
recv_link_if& operator=(const recv_link_if&) = delete;
diff --git a/host/lib/include/uhdlib/transport/nirio_link.hpp b/host/lib/include/uhdlib/transport/nirio_link.hpp
index 055874146..2335e311c 100644
--- a/host/lib/include/uhdlib/transport/nirio_link.hpp
+++ b/host/lib/include/uhdlib/transport/nirio_link.hpp
@@ -104,6 +104,24 @@ public:
return _adapter_id;
}
+ /*!
+ * Returns whether this link type supports releasing the frame buffers
+ * in an order different from that in which they were acquired.
+ */
+ bool supports_send_buff_out_of_order() const
+ {
+ return false;
+ }
+
+ /*!
+ * Returns whether this link type supports releasing the frame buffers
+ * in an order different from that in which they were acquired.
+ */
+ bool supports_recv_buff_out_of_order() const
+ {
+ return false;
+ }
+
private:
using recv_link_base_t = recv_link_base<nirio_link>;
using send_link_base_t = send_link_base<nirio_link>;