diff options
author | Marcus Müller <mueller@kit.edu> | 2018-02-20 13:15:20 +0100 |
---|---|---|
committer | Marcus Müller <marcus@hostalia.de> | 2018-02-23 19:06:50 +0100 |
commit | 9a366d9412e7f387cf325d6046806ed97497aa27 (patch) | |
tree | c9c62abeb3ce091f7699bbf2c8bb0c736194c729 /gr-zeromq/lib | |
parent | 8508461a2358a183fc555568041faeebffa73f59 (diff) |
zeromq: remove call to pmt::intern when checking queue
The rep_msg_sink was checking the head_delete_nowait status with a
freshly constructed pmt intern.
Diffstat (limited to 'gr-zeromq/lib')
-rw-r--r-- | gr-zeromq/lib/rep_msg_sink_impl.cc | 9 | ||||
-rw-r--r-- | gr-zeromq/lib/rep_msg_sink_impl.h | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/gr-zeromq/lib/rep_msg_sink_impl.cc b/gr-zeromq/lib/rep_msg_sink_impl.cc index b88e62b3bc..3a1086e2c1 100644 --- a/gr-zeromq/lib/rep_msg_sink_impl.cc +++ b/gr-zeromq/lib/rep_msg_sink_impl.cc @@ -42,7 +42,8 @@ namespace gr { : gr::block("rep_msg_sink", gr::io_signature::make(0, 0, 0), gr::io_signature::make(0, 0, 0)), - d_timeout(timeout) + d_timeout(timeout), + d_port(pmt::mp("in")) { int major, minor, patch; zmq::version(&major, &minor, &patch); @@ -58,7 +59,7 @@ namespace gr { d_socket->setsockopt(ZMQ_LINGER, &time, sizeof(time)); d_socket->bind (address); - message_port_register_in(pmt::mp("in")); + message_port_register_in(d_port); } rep_msg_sink_impl::~rep_msg_sink_impl() @@ -87,7 +88,7 @@ namespace gr { while(!d_finished) { // while we have data, wait for query... - while(!empty_p(pmt::mp("in"))) { + while(!empty_p(d_port)) { // wait for query... zmq::pollitem_t items[] = { { static_cast<void *>(*d_socket), 0, ZMQ_POLLIN, 0 } }; @@ -105,7 +106,7 @@ namespace gr { throw std::runtime_error("Request was not 1 msg for rep/req request!!"); // create message copy and send - pmt::pmt_t msg = delete_head_nowait(pmt::mp("in")); + pmt::pmt_t msg = delete_head_nowait(d_port); std::stringbuf sb(""); pmt::serialize( msg, sb ); std::string s = sb.str(); diff --git a/gr-zeromq/lib/rep_msg_sink_impl.h b/gr-zeromq/lib/rep_msg_sink_impl.h index d37a40990f..a8485304d7 100644 --- a/gr-zeromq/lib/rep_msg_sink_impl.h +++ b/gr-zeromq/lib/rep_msg_sink_impl.h @@ -38,6 +38,8 @@ namespace gr { boost::thread *d_thread; bool d_finished; + const pmt::pmt_t d_port; + void readloop(); public: |