summaryrefslogtreecommitdiff
path: root/gr-blocks/lib/multiply_const_cc_impl.cc
diff options
context:
space:
mode:
authorTom Rondeau <trondeau@vt.edu>2013-06-18 15:08:17 -0400
committerTom Rondeau <trondeau@vt.edu>2013-06-18 15:08:17 -0400
commitad1d52fd9911114ad8c9748e808b55de4e16232b (patch)
treebb5696ca8617290e5ae76672544f308e3a21baae /gr-blocks/lib/multiply_const_cc_impl.cc
parentbec07463ddb722ed22bae83577ffe4c8029ff90d (diff)
controlport: added support for complex data types.
Vectors of complex are still passed as interleaved. Single values can be passed as GNURadio::complex. ControlPort can translate these in GNU Radio to gr_complex; Python programs need to convert themselves. gr-ctrl-monitor updated to handle this. multiply_const_cc block updated to export get and set of k value through ControlPort.
Diffstat (limited to 'gr-blocks/lib/multiply_const_cc_impl.cc')
-rw-r--r--gr-blocks/lib/multiply_const_cc_impl.cc26
1 files changed, 26 insertions, 0 deletions
diff --git a/gr-blocks/lib/multiply_const_cc_impl.cc b/gr-blocks/lib/multiply_const_cc_impl.cc
index 1f363fd4a3..d0393907b0 100644
--- a/gr-blocks/lib/multiply_const_cc_impl.cc
+++ b/gr-blocks/lib/multiply_const_cc_impl.cc
@@ -68,5 +68,31 @@ namespace gr {
return noutput_items;
}
+ void
+ multiply_const_cc_impl::setup_rpc()
+ {
+#ifdef GR_CTRLPORT
+ add_rpc_variable(
+ rpcbasic_sptr(new rpcbasic_register_get<multiply_const_cc, gr_complex>(
+ alias(), "Constant",
+ &multiply_const_cc::k,
+ pmt::from_complex(-1000.0f, 0.0f),
+ pmt::from_complex(1000.0f, 0.0f),
+ pmt::from_complex(0.0f, 0.0f),
+ "", "Constant to multiply", RPC_PRIVLVL_MIN,
+ DISPTIME | DISPOPTCPLX | DISPOPTSTRIP)));
+
+ add_rpc_variable(
+ rpcbasic_sptr(new rpcbasic_register_set<multiply_const_cc, gr_complex>(
+ alias(), "Constant",
+ &multiply_const_cc::set_k,
+ pmt::from_complex(-1000.0f, 0.0f),
+ pmt::from_complex(1000.0f, 0.0f),
+ pmt::from_complex(0.0f, 0.0f),
+ "", "Constant to multiply",
+ RPC_PRIVLVL_MIN, DISPNULL)));
+#endif /* GR_CTRLPORT */
+ }
+
} /* namespace blocks */
} /* namespace gr */