From 354efc513fdb4096f8830e6c2e3e8f1311303e61 Mon Sep 17 00:00:00 2001 From: Martin Lucina Date: Wed, 10 Feb 2010 16:18:46 +0100 Subject: Convert documentation to AsciiDoc --- doc/zmq_cpp.txt | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 doc/zmq_cpp.txt (limited to 'doc/zmq_cpp.txt') diff --git a/doc/zmq_cpp.txt b/doc/zmq_cpp.txt new file mode 100644 index 0000000..8b58f2d --- /dev/null +++ b/doc/zmq_cpp.txt @@ -0,0 +1,89 @@ +zmq_cpp(7) +========== + + +NAME +---- +zmq_cpp - interface between 0MQ and C++ applications + + +SYNOPSIS +-------- +This manual page explains how C++ API maps to underlying C API. To learn about +individual functions and parameters check appropriate C API manual +pages. + +For example, to understand 'zmq::socket_t::setsockopt' function check +linkzmq:zmq_setsockopt[3]. + +All 0MQ constants defined with C API are available with C++ API. + + +zmq::context_t +-------------- +This class encapsulates the functions dealing with initialisation and +termination of 0MQ context. Constructor of the class invokes +linkzmq:zmq_init[3] while destructor calls linkzmq:zmq_term[3]. + + +zmq::socket_t +------------- +This class encapsulates all the functions to deal with 0MQ sockets. Constructor +calls linkzmq:zmq_socket[3], destructor calls linkzmq:zmq_close[3]. Other +functions of the class are mapped to C functions with corresponding names. +'zmq::socket_t::bind' calls linkzmq:zmq_bind[3] etc. + + +zmq::message_t +-------------- +This class encapsulates 'zmq_msg_t' structure and all the C functions that deal +with 0MQ messages. Constructors of the class invoke corresponding +initialisation functions linkzmq:zmq_msg_init[3], linkzmq:zmq_msg_init_size[3] +and linkzmq:zmq_msg_init_data[3], while destructor invokes +linkzmq:zmq_msg_close[3] function. + +Remaining functions are mapped to C functions with corresponding names. +For instance, 'zmq::message_t::copy' is mapped to linkzmq:zmq_msg_copy[3] +etc. + +C++ provides an additional function not available with C API. +'zmq::message_t::rebuild' is equivalent to calling linkzmq:zmq_close[3] +followed by linkzmq:zmq_msg_init[3], linkzmq:zmq_msg_init_size[3] or +linkzmq:zmq_msg_init_data[3]. It provides a way to reuse existing +'zmq::message_t' instances to store different message content. + + +zmq::error_t +------------ +All the errors reported using 'errno' mechanism in C API are automatically +converted to exceptions in C++ API. 'zmq::error_t' is derived from +'std::exception' and uses linkzmq:zmq_strerror[3] function to convert the error +code to human-readable string. + + +zmq::poll +--------- +'zmq::poll' function is a namespaced equivalent of raw C linkzmq:zmq_poll[3] +function. + + +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 +-------- +linkzmq:zmq[7] + + +AUTHOR +------ +Martin Sustrik -- cgit v1.2.3