diff options
author | Tom Rondeau <trondeau@vt.edu> | 2013-01-23 16:04:33 -0500 |
---|---|---|
committer | Tom Rondeau <trondeau@vt.edu> | 2013-01-23 16:14:19 -0500 |
commit | 54c0f407b7045b821e03bbe95875590c3bea666b (patch) | |
tree | e957449688ce17f76a67c0d9879c444a86948499 /gnuradio-core/src/lib/general | |
parent | 74c9034f5f645181cb449a1660deb97b918086e9 (diff) |
ctrlport: updated all blocks using controlport to use new style of setup_rpc.
QA fixed and passing.
Diffstat (limited to 'gnuradio-core/src/lib/general')
-rw-r--r-- | gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.cc | 40 | ||||
-rw-r--r-- | gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.h | 8 | ||||
-rw-r--r-- | gnuradio-core/src/lib/general/gr_ctrlport_probe_c.cc | 21 | ||||
-rw-r--r-- | gnuradio-core/src/lib/general/gr_ctrlport_probe_c.h | 6 | ||||
-rw-r--r-- | gnuradio-core/src/lib/general/gr_nop.cc | 10 | ||||
-rw-r--r-- | gnuradio-core/src/lib/general/gr_nop.h | 2 |
6 files changed, 56 insertions, 31 deletions
diff --git a/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.cc b/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.cc index 453f55ef4d..1b78a9cbc3 100644 --- a/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.cc +++ b/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.cc @@ -40,18 +40,7 @@ gr_ctrlport_probe2_c::gr_ctrlport_probe2_c(const std::string &id, : gr_sync_block("probe2_c", gr_make_io_signature(1, 1, sizeof(gr_complex)), gr_make_io_signature(0, 0, 0)), - d_len(len), - d_const_rpc(d_name, id.c_str(), this, unique_id(), &gr_ctrlport_probe2_c::get, - pmt::make_c32vector(0,-2), - pmt::make_c32vector(0,2), - pmt::make_c32vector(0,0), - "volts", desc.c_str(), RPC_PRIVLVL_MIN, DISPXYSCATTER), - d_len_get_rpc(d_name, "length", this, unique_id(), &gr_ctrlport_probe2_c::length, - pmt::mp(1), pmt::mp(10*len), pmt::mp(len), - "samples", "get vector length", RPC_PRIVLVL_MIN, DISPNULL), - d_len_set_rpc(d_name, "length", this, unique_id(), &gr_ctrlport_probe2_c::set_length, - pmt::mp(1), pmt::mp(10*len), pmt::mp(len), - "samples", "set vector length", RPC_PRIVLVL_MIN, DISPNULL) + d_id(id), d_desc(desc), d_len(len) { set_length(len); } @@ -137,3 +126,30 @@ gr_ctrlport_probe2_c::work(int noutput_items, return noutput_items; } + +void +gr_ctrlport_probe2_c::setup_rpc() +{ +#ifdef GR_CTRLPORT + int len = static_cast<int>(d_len); + d_rpc_vars.push_back( + rpcbasic_sptr(new rpcbasic_register_get<gr_ctrlport_probe2_c, std::vector<std::complex<float> > >( + alias(), d_id.c_str(), &gr_ctrlport_probe2_c::get, + pmt::make_c32vector(0,-2), + pmt::make_c32vector(0,2), + pmt::make_c32vector(0,0), + "volts", d_desc.c_str(), RPC_PRIVLVL_MIN, DISPXYSCATTER))); + + d_rpc_vars.push_back( + rpcbasic_sptr(new rpcbasic_register_get<gr_ctrlport_probe2_c, int>( + alias(), "length", &gr_ctrlport_probe2_c::length, + pmt::mp(1), pmt::mp(10*len), pmt::mp(len), + "samples", "get vector length", RPC_PRIVLVL_MIN, DISPNULL))); + + d_rpc_vars.push_back( + rpcbasic_sptr(new rpcbasic_register_set<gr_ctrlport_probe2_c, int>( + alias(), "length", &gr_ctrlport_probe2_c::set_length, + pmt::mp(1), pmt::mp(10*len), pmt::mp(len), + "samples", "set vector length", RPC_PRIVLVL_MIN, DISPNULL))); +#endif /* GR_CTRLPORT */ +} diff --git a/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.h b/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.h index aa0f86f635..0920c0f4e8 100644 --- a/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.h +++ b/gnuradio-core/src/lib/general/gr_ctrlport_probe2_c.h @@ -42,6 +42,8 @@ class GR_CORE_API gr_ctrlport_probe2_c : public gr_sync_block gr_ctrlport_probe2_c(const std::string &id, const std::string &desc, int len); + std::string d_id; + std::string d_desc; size_t d_len; boost::shared_mutex mutex_buffer; mutable boost::mutex mutex_notify; @@ -49,13 +51,11 @@ class GR_CORE_API gr_ctrlport_probe2_c : public gr_sync_block std::vector<gr_complex> d_buffer; - rpcbasic_register_get<gr_ctrlport_probe2_c, std::vector<std::complex<float> > > d_const_rpc; - rpcbasic_register_get<gr_ctrlport_probe2_c, int> d_len_get_rpc; - rpcbasic_register_set<gr_ctrlport_probe2_c, int> d_len_set_rpc; - public: ~gr_ctrlport_probe2_c(); + void setup_rpc(); + void forecast(int noutput_items, gr_vector_int &ninput_items_required); std::vector<gr_complex> get(); diff --git a/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.cc b/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.cc index 7ad7bd6bce..e06f27eb70 100644 --- a/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.cc +++ b/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.cc @@ -41,12 +41,7 @@ gr_ctrlport_probe_c::gr_ctrlport_probe_c(const std::string &id, : gr_sync_block("probe_c", gr_make_io_signature(1, 1, sizeof(gr_complex)), gr_make_io_signature(0, 0, 0)), - d_ptr(NULL), d_ptrLen(0), - d_const_rpc(d_name, id.c_str(), this, unique_id(), &gr_ctrlport_probe_c::get, - pmt::make_c32vector(0,-2), - pmt::make_c32vector(0,2), - pmt::make_c32vector(0,0), - "volts", desc.c_str(), RPC_PRIVLVL_MIN, DISPXYSCATTER) + d_id(id), d_desc(desc), d_ptr(NULL), d_ptrLen(0) { } @@ -84,3 +79,17 @@ gr_ctrlport_probe_c::work(int noutput_items, return noutput_items; } + +void +gr_ctrlport_probe_c::setup_rpc() +{ +#ifdef GR_CTRLPORT + d_rpc_vars.push_back( + rpcbasic_sptr(new rpcbasic_register_get<gr_ctrlport_probe_c, std::vector<std::complex<float> > >( + alias(), d_id.c_str(), &gr_ctrlport_probe_c::get, + pmt::make_c32vector(0,-2), + pmt::make_c32vector(0,2), + pmt::make_c32vector(0,0), + "volts", d_desc.c_str(), RPC_PRIVLVL_MIN, DISPXYSCATTER))); +#endif /* GR_CTRLPORT */ +} diff --git a/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.h b/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.h index bf9b4ffa4c..27666ab597 100644 --- a/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.h +++ b/gnuradio-core/src/lib/general/gr_ctrlport_probe_c.h @@ -44,14 +44,16 @@ class GR_CORE_API gr_ctrlport_probe_c : public gr_sync_block boost::shared_mutex ptrlock; + std::string d_id; + std::string d_desc; const gr_complex* d_ptr; size_t d_ptrLen; - rpcbasic_register_get<gr_ctrlport_probe_c, std::vector<std::complex<float> > > d_const_rpc; - public: ~gr_ctrlport_probe_c(); + void setup_rpc(); + std::vector<gr_complex> get(); int work(int noutput_items, diff --git a/gnuradio-core/src/lib/general/gr_nop.cc b/gnuradio-core/src/lib/general/gr_nop.cc index bfecc861dc..164f3ba8dd 100644 --- a/gnuradio-core/src/lib/general/gr_nop.cc +++ b/gnuradio-core/src/lib/general/gr_nop.cc @@ -41,10 +41,8 @@ gr_nop::gr_nop (size_t sizeof_stream_item) : gr_block ("nop", gr_make_io_signature (0, -1, sizeof_stream_item), gr_make_io_signature (0, -1, sizeof_stream_item)), - d_nmsgs_recvd(0) + d_nmsgs_recvd(0), d_ctrlport_test(0) { - set_rpc(); - // Arrange to have count_received_msgs called when messages are received. message_port_register_in(pmt::mp("port")); set_msg_handler(pmt::mp("port"), boost::bind(&gr_nop::count_received_msgs, this, _1)); @@ -72,12 +70,12 @@ gr_nop::general_work (int noutput_items, } void -gr_nop::set_rpc() +gr_nop::setup_rpc() { #ifdef GR_CTRLPORT d_rpc_vars.push_back( rpcbasic_sptr(new rpcbasic_register_get<gr_nop, int>( - d_name, "test", this, unique_id(), + alias(), "test", &gr_nop::ctrlport_test, pmt::mp(-256), pmt::mp(255), pmt::mp(0), "", "Simple testing variable", @@ -85,7 +83,7 @@ gr_nop::set_rpc() d_rpc_vars.push_back( rpcbasic_sptr(new rpcbasic_register_set<gr_nop, int>( - d_name, "test", this, unique_id(), + alias(), "test", &gr_nop::set_ctrlport_test, pmt::mp(-256), pmt::mp(255), pmt::mp(0), "", "Simple testing variable", diff --git a/gnuradio-core/src/lib/general/gr_nop.h b/gnuradio-core/src/lib/general/gr_nop.h index 09bd900129..5f1cb13a02 100644 --- a/gnuradio-core/src/lib/general/gr_nop.h +++ b/gnuradio-core/src/lib/general/gr_nop.h @@ -43,7 +43,7 @@ class GR_CORE_API gr_nop : public gr_block gr_nop (size_t sizeof_stream_item); std::vector<boost::any> d_rpc_vars; - void set_rpc(); + void setup_rpc(); protected: int d_nmsgs_recvd; |