Man Linux: Main Page and Category List

NAME

       zmq_cpp - interface between 0MQ and C++ applications

SYNOPSIS

       #include <zmq.hpp>

       c++ [flags] files -lzmq [libraries]

DESCRIPTION

       This manual page describes how the 0MQ C++ language binding maps to the
       underlying 0MQ C library functions.

       All 0MQ constants defined by zmq.h are also available to the C++
       language binding.

       The following classes are provided in the zmq namespace:

   Context
       The context_t class encapsulates functionality dealing with the
       initialisation and termination of a 0MQ context.

       Constructor
               context_t::context_t(int app_threads, int io_threads, int flags = 0)

           Maps to the zmq_init() function, as described in zmq_init(3).

       Destructor
               context_t::~context_t(void)

           Maps to the zmq_term() function, as described in zmq_term(3).

       Methods
           None.

   Socket
       The socket_t class encapsulates a 0MQ socket.

       Constructor
               socket_t::socket_t(context_t &context, int type)

           Maps to the zmq_socket() function, as described in zmq_socket(3).

       Destructor
               socket_t::~socket_t(void)

           Calls the zmq_close() function, as described in zmq_close(3).

       Methods
               void socket_t::setsockopt(int option_name, const void *option_value, size_t
               option_len)

           Maps to the zmq_setsockopt() function, as described in
           zmq_setsockopt(3).

               void socket_t::bind(const char *address)

           Maps to the zmq_bind() function, as described in zmq_bind(3).

               void socket_t::connect(const char *address)

           Maps to the zmq_connect() function, as described in zmq_connect(3).

               bool socket_t::send(message_t &msg, int flags = 0)

           Maps to the zmq_send() function, as described in zmq_send(3).

               bool socket_t::recv(message_t *msg, int flags = 0)

           Maps to the zmq_recv() function, as described in zmq_recv(3).

   Message
       The zmq::message_t class encapsulates the zmq_msg_t structure and
       functions to construct, destruct and manipulate 0MQ messages.

       Constructor
               message_t::message_t(void)
               message_t::message_t(size_t size)
               message_t::message_t(void *data, size_t size, free_fn *ffn)

           These map to the zmq_msg_init(), zmq_msg_init_size() and
           zmq_msg_init_data() functions, described in zmq_msg_init(3),
           zmq_msg_init_size(3) and linkzmq_msg_init_data[3] respectively.

       Destructor
               message_t::~message_t(void)

           Calls the zmq_msg_close() function, as described in
           zmq_msg_close(3).

       Methods
               void *message_t::data (void)

           Maps to the zmq_msg_data() function, as described in
           zmq_msg_data(3).

               size_t message_t::size (void)

           Maps to the zmq_msg_size() function, as described in
           zmq_msg_size(3).

               void message_t::copy (message_t *src)

           Maps to the zmq_msg_copy() function, as described in
           zmq_msg_copy(3).

               void message_t::move (message_t *src)

           Maps to the zmq_msg_move() function, as described in
           zmq_msg_move(3).

               message_t::rebuild(void)
               message_t::rebuild(size_t size)
               message_t::rebuild(void *data, size_t size, free_fn *ffn)

           Equivalent to calling the zmq_msg_close() function followed by the
           corresponding zmq_msg_init() function.

   Input/output multiplexing
       The poll() function is a namespaced equivalent of the zmq_poll()
       function, as described in zmq_poll(3).

ERROR HANDLING

       All errors reported by the underlying 0MQ C library functions are
       automatically converted to exceptions by the C++ language binding. The
       zmq::error_t class is derived from the std::exception class and uses
       the zmq_strerror() function to convert the error code to human-readable
       string.

EXAMPLE

           zmq::context_t ctx (1, 1);
           zmq::socket_t s (ctx, ZMQ_PUB);
           s.connect ("tcp://192.168.0.115:5555");
           zmq::message_t msg (100);
           memset (msg.data (), 0, 100);
           s.send (msg);

SEE ALSO

       zmq(7)

AUTHORS

       The 0MQ documentation was written by Martin Sustrik
       <sustrik@250bpm.com[1]> and Martin Lucina <mato@kotelna.sk[2]>.

NOTES

        1. sustrik@250bpm.com
           mailto:sustrik@250bpm.com

        2. mato@kotelna.sk
           mailto:mato@kotelna.sk