channel.hpp
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MPL-2.0 */
2 
3 #ifndef __ZMQ_CHANNEL_HPP_INCLUDED__
4 #define __ZMQ_CHANNEL_HPP_INCLUDED__
5 
6 #include "blob.hpp"
7 #include "socket_base.hpp"
8 #include "session_base.hpp"
9 
10 namespace zmq
11 {
12 class ctx_t;
13 class msg_t;
14 class pipe_t;
15 class io_thread_t;
16 
17 class channel_t ZMQ_FINAL : public socket_base_t
18 {
19  public:
20  channel_t (zmq::ctx_t *parent_, uint32_t tid_, int sid_);
21  ~channel_t ();
22 
23  // Overrides of functions from socket_base_t.
24  void xattach_pipe (zmq::pipe_t *pipe_,
25  bool subscribe_to_all_,
26  bool locally_initiated_);
27  int xsend (zmq::msg_t *msg_);
28  int xrecv (zmq::msg_t *msg_);
29  bool xhas_in ();
30  bool xhas_out ();
31  void xread_activated (zmq::pipe_t *pipe_);
32  void xwrite_activated (zmq::pipe_t *pipe_);
33  void xpipe_terminated (zmq::pipe_t *pipe_);
34 
35  private:
36  zmq::pipe_t *_pipe;
37 
39 };
40 }
41 
42 #endif
zmq::ZMQ_FINAL
Definition: channel.hpp:17
zmq::socket_base_t
Definition: socket_base.hpp:31
zmq
Definition: zmq.hpp:229
zmq::ZMQ_FINAL::_pipe
zmq::pipe_t * _pipe
Definition: channel.hpp:36
ZMQ_NON_COPYABLE_NOR_MOVABLE
#define ZMQ_NON_COPYABLE_NOR_MOVABLE(classname)
Definition: macros.hpp:58
socket_base.hpp
blob.hpp
session_base.hpp
zmq::msg_t
Definition: msg.hpp:33


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:06:48