From c80e7b80cc726ca7c29493c2553c8d19792bb6e5 Mon Sep 17 00:00:00 2001 From: Martin Sustrik Date: Sat, 4 Dec 2010 23:14:38 +0100 Subject: XPUB and XSUB socket types added. These are just placeholders. At the moment XPUB behaves th same as PUB and XSUB as SUB. Signed-off-by: Martin Sustrik --- src/pub.hpp | 34 ++-------------------------------- 1 file changed, 2 insertions(+), 32 deletions(-) (limited to 'src/pub.hpp') diff --git a/src/pub.hpp b/src/pub.hpp index 270bda5..f398526 100644 --- a/src/pub.hpp +++ b/src/pub.hpp @@ -20,50 +20,20 @@ #ifndef __ZMQ_PUB_HPP_INCLUDED__ #define __ZMQ_PUB_HPP_INCLUDED__ -#include "socket_base.hpp" -#include "array.hpp" -#include "pipe.hpp" +#include "xpub.hpp" namespace zmq { - class pub_t : public socket_base_t, public i_writer_events + class pub_t : public xpub_t { public: pub_t (class ctx_t *parent_, uint32_t tid_); ~pub_t (); - // Implementations of virtual functions from socket_base_t. - void xattach_pipes (class reader_t *inpipe_, class writer_t *outpipe_, - const blob_t &peer_identity_); - int xsend (zmq_msg_t *msg_, int flags_); - bool xhas_out (); - - // i_writer_events interface implementation. - void activated (writer_t *pipe_); - void terminated (writer_t *pipe_); - private: - // Hook into the termination process. - void process_term (int linger_); - - // Write the message to the pipe. Make the pipe inactive if writing - // fails. In such a case false is returned. - bool write (class writer_t *pipe_, zmq_msg_t *msg_); - - // Outbound pipes, i.e. those the socket is sending messages to. - typedef array_t pipes_t; - pipes_t pipes; - - // Number of active pipes. All the active pipes are located at the - // beginning of the pipes array. - pipes_t::size_type active; - - // True if termination process is already underway. - bool terminating; - pub_t (const pub_t&); void operator = (const pub_t&); }; -- cgit v1.2.3