.. _program_listing_file_lib_utilities_zmqutil.hpp: Program Listing for File zmqutil.hpp ==================================== |exhale_lsh| :ref:`Return to documentation for file ` (``lib/utilities/zmqutil.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // --------------------------------------------------------------------- // This file is part of falcon-core. // // Copyright (C) 2015, 2016, 2017 Neuro-Electronics Research Flanders // // Falcon-server is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Falcon-server is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with falcon-core. If not, see . // --------------------------------------------------------------------- #pragma once #include #include #include #include typedef std::deque zmq_frames; // Convert string to 0MQ string and send to socket bool s_send(zmq::socket_t &socket, const std::string &string, int more=0); // Send multi-part message bool s_send_multi(zmq::socket_t &socket, const zmq_frames &frames); // helper function to check if more message parts are available // Receive 0MQ string from socket and convert into string bool s_recv(zmq::socket_t &socket, std::string &s_message, int more=0); // Non-blocking receive string //bool s_nonblocking_recv(zmq::socket_t &socket, std::string &s_message); bool sockopt_rcvmore(zmq::socket_t &socket); // Receive multipart message zmq_frames s_blocking_recv_multi(zmq::socket_t &socket); // Non-blocking receive multi-part message bool s_nonblocking_recv_multi(zmq::socket_t &socket, zmq_frames &frames);