diff options
Diffstat (limited to 'gr-zeromq/lib/pull_msg_source_impl.cc')
-rw-r--r-- | gr-zeromq/lib/pull_msg_source_impl.cc | 114 |
1 files changed, 56 insertions, 58 deletions
diff --git a/gr-zeromq/lib/pull_msg_source_impl.cc b/gr-zeromq/lib/pull_msg_source_impl.cc index 48ad2bd5b1..100c7be5a3 100644 --- a/gr-zeromq/lib/pull_msg_source_impl.cc +++ b/gr-zeromq/lib/pull_msg_source_impl.cc @@ -31,88 +31,86 @@ #include "tag_headers.h" namespace gr { - namespace zeromq { +namespace zeromq { - pull_msg_source::sptr - pull_msg_source::make(char *address, int timeout) - { - return gnuradio::get_initial_sptr - (new pull_msg_source_impl(address, timeout)); - } +pull_msg_source::sptr pull_msg_source::make(char* address, int timeout) +{ + return gnuradio::get_initial_sptr(new pull_msg_source_impl(address, timeout)); +} - pull_msg_source_impl::pull_msg_source_impl(char *address, int timeout) - : gr::block("pull_msg_source", - gr::io_signature::make(0, 0, 0), - gr::io_signature::make(0, 0, 0)), +pull_msg_source_impl::pull_msg_source_impl(char* address, int timeout) + : gr::block("pull_msg_source", + gr::io_signature::make(0, 0, 0), + gr::io_signature::make(0, 0, 0)), d_timeout(timeout), d_port(pmt::mp("out")) - { - int major, minor, patch; - zmq::version (&major, &minor, &patch); +{ + int major, minor, patch; + zmq::version(&major, &minor, &patch); - if (major < 3) { - d_timeout = timeout*1000; - } + if (major < 3) { + d_timeout = timeout * 1000; + } - d_context = new zmq::context_t(1); - d_socket = new zmq::socket_t(*d_context, ZMQ_PULL); + d_context = new zmq::context_t(1); + d_socket = new zmq::socket_t(*d_context, ZMQ_PULL); - int time = 0; - d_socket->setsockopt(ZMQ_LINGER, &time, sizeof(time)); - d_socket->connect (address); + int time = 0; + d_socket->setsockopt(ZMQ_LINGER, &time, sizeof(time)); + d_socket->connect(address); - message_port_register_out(d_port); - } + message_port_register_out(d_port); +} - pull_msg_source_impl::~pull_msg_source_impl() - { - d_socket->close(); - delete d_socket; - delete d_context; - } +pull_msg_source_impl::~pull_msg_source_impl() +{ + d_socket->close(); + delete d_socket; + delete d_context; +} - bool pull_msg_source_impl::start() - { - d_finished = false; - d_thread = new boost::thread(boost::bind(&pull_msg_source_impl::readloop, this)); - return true; - } +bool pull_msg_source_impl::start() +{ + d_finished = false; + d_thread = new boost::thread(boost::bind(&pull_msg_source_impl::readloop, this)); + return true; +} - bool pull_msg_source_impl::stop() - { - d_finished = true; - d_thread->join(); - return true; - } +bool pull_msg_source_impl::stop() +{ + d_finished = true; + d_thread->join(); + return true; +} - void pull_msg_source_impl::readloop() - { - while(!d_finished){ +void pull_msg_source_impl::readloop() +{ + while (!d_finished) { - zmq::pollitem_t items[] = { { static_cast<void *>(*d_socket), 0, ZMQ_POLLIN, 0 } }; - zmq::poll (&items[0], 1, d_timeout); + zmq::pollitem_t items[] = { { static_cast<void*>(*d_socket), 0, ZMQ_POLLIN, 0 } }; + zmq::poll(&items[0], 1, d_timeout); // If we got a reply, process if (items[0].revents & ZMQ_POLLIN) { - // Receive data - zmq::message_t msg; + // Receive data + zmq::message_t msg; #if USE_NEW_CPPZMQ_SEND_RECV - d_socket->recv(msg); + d_socket->recv(msg); #else - d_socket->recv(&msg); + d_socket->recv(&msg); #endif - std::string buf(static_cast<char*>(msg.data()), msg.size()); - std::stringbuf sb(buf); - pmt::pmt_t m = pmt::deserialize(sb); - message_port_pub(d_port, m); + std::string buf(static_cast<char*>(msg.data()), msg.size()); + std::stringbuf sb(buf); + pmt::pmt_t m = pmt::deserialize(sb); + message_port_pub(d_port, m); } else { - boost::this_thread::sleep(boost::posix_time::microseconds(100)); + boost::this_thread::sleep(boost::posix_time::microseconds(100)); } - } } +} - } /* namespace zeromq */ +} /* namespace zeromq */ } /* namespace gr */ |