aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/include
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2019-07-23 10:13:38 -0700
committerMartin Braun <martin.braun@ettus.com>2019-11-26 11:49:32 -0800
commit83abb81e61beec213f9f83843d6fab637a578f4a (patch)
treec3b95387f4251138f9374cd49b834b04ee10e408 /host/lib/include
parent053306f2934e6ac61f03783c36eeff6b2c5ffe0f (diff)
downloaduhd-83abb81e61beec213f9f83843d6fab637a578f4a.tar.gz
uhd-83abb81e61beec213f9f83843d6fab637a578f4a.tar.bz2
uhd-83abb81e61beec213f9f83843d6fab637a578f4a.zip
rfnoc: actions: Allow sending actions to self
Sending actions to self is useful because calling post_action() from within an action handler will not actually trigger the action. Instead, it will defer delivery of the action. Allowing sending actions to self will allow to add another action, in deterministic order, and the execution of another action handler.
Diffstat (limited to 'host/lib/include')
-rw-r--r--host/lib/include/uhdlib/rfnoc/node_accessor.hpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/host/lib/include/uhdlib/rfnoc/node_accessor.hpp b/host/lib/include/uhdlib/rfnoc/node_accessor.hpp
index 93e2733cf..517d2b517 100644
--- a/host/lib/include/uhdlib/rfnoc/node_accessor.hpp
+++ b/host/lib/include/uhdlib/rfnoc/node_accessor.hpp
@@ -98,6 +98,16 @@ public:
node->receive_action(port_info, action);
}
+ /*! Fake a post_action() call from this node
+ *
+ * This will call node_t::post_action() (see that for details).
+ */
+ void post_action(
+ node_t* node, const res_source_info& edge_info, action_info::sptr action)
+ {
+ node->post_action(edge_info, action);
+ }
+
/*! Check topology for this block
*
* See node_t::check_topology() for details