38 #ifndef __ZMQ_H_INCLUDED__ 39 #define __ZMQ_H_INCLUDED__ 42 #define ZMQ_VERSION_MAJOR 4 43 #define ZMQ_VERSION_MINOR 2 44 #define ZMQ_VERSION_PATCH 0 46 #define ZMQ_MAKE_VERSION(major, minor, patch) \ 47 ((major) * 10000 + (minor) * 100 + (patch)) 49 ZMQ_MAKE_VERSION(ZMQ_VERSION_MAJOR, ZMQ_VERSION_MINOR, ZMQ_VERSION_PATCH) 55 #if !defined _WIN32_WCE 66 # if defined ZMQ_STATIC 68 # elif defined DLL_EXPORT 69 # define ZMQ_EXPORT __declspec(dllexport) 71 # define ZMQ_EXPORT __declspec(dllimport) 74 # if defined __SUNPRO_C || defined __SUNPRO_CC 75 # define ZMQ_EXPORT __global 76 # elif (defined __GNUC__ && __GNUC__ >= 4) || defined __INTEL_COMPILER 77 # define ZMQ_EXPORT __attribute__ ((visibility("default"))) 84 #define ZMQ_DEFINED_STDINT 1 85 #if defined ZMQ_HAVE_SOLARIS || defined ZMQ_HAVE_OPENVMS 86 # include <inttypes.h> 87 #elif defined _MSC_VER && _MSC_VER < 1600 89 typedef __int32 int32_t;
92 typedef unsigned __int16 uint16_t;
95 typedef unsigned __int8 uint8_t;
108 #define ZMQ_HAUSNUMERO 156384712 112 #define ENOTSUP (ZMQ_HAUSNUMERO + 1) 114 #ifndef EPROTONOSUPPORT 115 #define EPROTONOSUPPORT (ZMQ_HAUSNUMERO + 2) 118 #define ENOBUFS (ZMQ_HAUSNUMERO + 3) 121 #define ENETDOWN (ZMQ_HAUSNUMERO + 4) 124 #define EADDRINUSE (ZMQ_HAUSNUMERO + 5) 126 #ifndef EADDRNOTAVAIL 127 #define EADDRNOTAVAIL (ZMQ_HAUSNUMERO + 6) 130 #define ECONNREFUSED (ZMQ_HAUSNUMERO + 7) 133 #define EINPROGRESS (ZMQ_HAUSNUMERO + 8) 136 #define ENOTSOCK (ZMQ_HAUSNUMERO + 9) 139 #define EMSGSIZE (ZMQ_HAUSNUMERO + 10) 142 #define EAFNOSUPPORT (ZMQ_HAUSNUMERO + 11) 145 #define ENETUNREACH (ZMQ_HAUSNUMERO + 12) 148 #define ECONNABORTED (ZMQ_HAUSNUMERO + 13) 151 #define ECONNRESET (ZMQ_HAUSNUMERO + 14) 154 #define ENOTCONN (ZMQ_HAUSNUMERO + 15) 157 #define ETIMEDOUT (ZMQ_HAUSNUMERO + 16) 160 #define EHOSTUNREACH (ZMQ_HAUSNUMERO + 17) 163 #define ENETRESET (ZMQ_HAUSNUMERO + 18) 167 #define EFSM (ZMQ_HAUSNUMERO + 51) 168 #define ENOCOMPATPROTO (ZMQ_HAUSNUMERO + 52) 169 #define ETERM (ZMQ_HAUSNUMERO + 53) 170 #define EMTHREAD (ZMQ_HAUSNUMERO + 54) 189 #define ZMQ_IO_THREADS 1 190 #define ZMQ_MAX_SOCKETS 2 191 #define ZMQ_SOCKET_LIMIT 3 192 #define ZMQ_THREAD_PRIORITY 3 193 #define ZMQ_THREAD_SCHED_POLICY 4 194 #define ZMQ_MAX_MSGSZ 5 197 #define ZMQ_IO_THREADS_DFLT 1 198 #define ZMQ_MAX_SOCKETS_DFLT 1023 199 #define ZMQ_THREAD_PRIORITY_DFLT -1 200 #define ZMQ_THREAD_SCHED_POLICY_DFLT -1 257 #define ZMQ_STREAM 11 260 #define ZMQ_XREQ ZMQ_DEALER 261 #define ZMQ_XREP ZMQ_ROUTER 264 #define ZMQ_AFFINITY 4 265 #define ZMQ_IDENTITY 5 266 #define ZMQ_SUBSCRIBE 6 267 #define ZMQ_UNSUBSCRIBE 7 269 #define ZMQ_RECOVERY_IVL 9 270 #define ZMQ_SNDBUF 11 271 #define ZMQ_RCVBUF 12 272 #define ZMQ_RCVMORE 13 274 #define ZMQ_EVENTS 15 276 #define ZMQ_LINGER 17 277 #define ZMQ_RECONNECT_IVL 18 278 #define ZMQ_BACKLOG 19 279 #define ZMQ_RECONNECT_IVL_MAX 21 280 #define ZMQ_MAXMSGSIZE 22 281 #define ZMQ_SNDHWM 23 282 #define ZMQ_RCVHWM 24 283 #define ZMQ_MULTICAST_HOPS 25 284 #define ZMQ_RCVTIMEO 27 285 #define ZMQ_SNDTIMEO 28 286 #define ZMQ_LAST_ENDPOINT 32 287 #define ZMQ_ROUTER_MANDATORY 33 288 #define ZMQ_TCP_KEEPALIVE 34 289 #define ZMQ_TCP_KEEPALIVE_CNT 35 290 #define ZMQ_TCP_KEEPALIVE_IDLE 36 291 #define ZMQ_TCP_KEEPALIVE_INTVL 37 292 #define ZMQ_IMMEDIATE 39 293 #define ZMQ_XPUB_VERBOSE 40 294 #define ZMQ_ROUTER_RAW 41 296 #define ZMQ_MECHANISM 43 297 #define ZMQ_PLAIN_SERVER 44 298 #define ZMQ_PLAIN_USERNAME 45 299 #define ZMQ_PLAIN_PASSWORD 46 300 #define ZMQ_CURVE_SERVER 47 301 #define ZMQ_CURVE_PUBLICKEY 48 302 #define ZMQ_CURVE_SECRETKEY 49 303 #define ZMQ_CURVE_SERVERKEY 50 304 #define ZMQ_PROBE_ROUTER 51 305 #define ZMQ_REQ_CORRELATE 52 306 #define ZMQ_REQ_RELAXED 53 307 #define ZMQ_CONFLATE 54 308 #define ZMQ_ZAP_DOMAIN 55 309 #define ZMQ_ROUTER_HANDOVER 56 311 #define ZMQ_CONNECT_RID 61 312 #define ZMQ_GSSAPI_SERVER 62 313 #define ZMQ_GSSAPI_PRINCIPAL 63 314 #define ZMQ_GSSAPI_SERVICE_PRINCIPAL 64 315 #define ZMQ_GSSAPI_PLAINTEXT 65 316 #define ZMQ_HANDSHAKE_IVL 66 317 #define ZMQ_SOCKS_PROXY 68 318 #define ZMQ_XPUB_NODROP 69 321 #define ZMQ_BLOCKY 70 322 #define ZMQ_XPUB_MANUAL 71 323 #define ZMQ_XPUB_WELCOME_MSG 72 324 #define ZMQ_STREAM_NOTIFY 73 325 #define ZMQ_INVERT_MATCHING 74 326 #define ZMQ_HEARTBEAT_IVL 75 327 #define ZMQ_HEARTBEAT_TTL 76 328 #define ZMQ_HEARTBEAT_TIMEOUT 77 329 #define ZMQ_XPUB_VERBOSER 78 330 #define ZMQ_CONNECT_TIMEOUT 79 331 #define ZMQ_TCP_MAXRT 80 332 #define ZMQ_THREAD_SAFE 81 333 #define ZMQ_MULTICAST_MAXTPDU 84 334 #define ZMQ_VMCI_BUFFER_SIZE 85 335 #define ZMQ_VMCI_BUFFER_MIN_SIZE 86 336 #define ZMQ_VMCI_BUFFER_MAX_SIZE 87 337 #define ZMQ_VMCI_CONNECT_TIMEOUT 88 338 #define ZMQ_USE_FD 89 345 #define ZMQ_DONTWAIT 1 346 #define ZMQ_SNDMORE 2 355 #define ZMQ_GROUP_MAX_LENGTH 15 358 #define ZMQ_TCP_ACCEPT_FILTER 38 359 #define ZMQ_IPC_FILTER_PID 58 360 #define ZMQ_IPC_FILTER_UID 59 361 #define ZMQ_IPC_FILTER_GID 60 362 #define ZMQ_IPV4ONLY 31 363 #define ZMQ_DELAY_ATTACH_ON_CONNECT ZMQ_IMMEDIATE 364 #define ZMQ_NOBLOCK ZMQ_DONTWAIT 365 #define ZMQ_FAIL_UNROUTABLE ZMQ_ROUTER_MANDATORY 366 #define ZMQ_ROUTER_BEHAVIOR ZMQ_ROUTER_MANDATORY 377 #define ZMQ_EVENT_CONNECTED 0x0001 378 #define ZMQ_EVENT_CONNECT_DELAYED 0x0002 379 #define ZMQ_EVENT_CONNECT_RETRIED 0x0004 380 #define ZMQ_EVENT_LISTENING 0x0008 381 #define ZMQ_EVENT_BIND_FAILED 0x0010 382 #define ZMQ_EVENT_ACCEPTED 0x0020 383 #define ZMQ_EVENT_ACCEPT_FAILED 0x0040 384 #define ZMQ_EVENT_CLOSED 0x0080 385 #define ZMQ_EVENT_CLOSE_FAILED 0x0100 386 #define ZMQ_EVENT_DISCONNECTED 0x0200 387 #define ZMQ_EVENT_MONITOR_STOPPED 0x0400 388 #define ZMQ_EVENT_ALL 0xFFFF 411 #define ZMQ_POLLOUT 2 412 #define ZMQ_POLLERR 4 413 #define ZMQ_POLLPRI 8 427 #define ZMQ_POLLITEMS_DFLT 16 442 #define ZMQ_HAS_CAPABILITIES 1 446 #define ZMQ_STREAMER 1 447 #define ZMQ_FORWARDER 2 517 #ifdef ZMQ_BUILD_DRAFT_API 520 #define ZMQ_SERVER 12 521 #define ZMQ_CLIENT 13 524 #define ZMQ_GATHER 16 525 #define ZMQ_SCATTER 17 541 #define ZMQ_HAVE_POLLER 576 #define ZMQ_HAVE_TIMERS 589 #endif // ZMQ_BUILD_DRAFT_API
ZMQ_EXPORT int zmq_recviov(void *s, struct iovec *iov, size_t *count, int flags)
int zmq_poller_remove_fd(void *poller, int fd)
int zmq_poller_add_fd(void *poller, int fd, void *user_data, short events)
ZMQ_EXPORT int zmq_setsockopt(void *s, int option, const void *optval, size_t optvallen)
int zmq_poller_add(void *poller, void *socket, void *user_data, short events)
ZMQ_EXPORT int zmq_unbind(void *s, const char *addr)
uint32_t zmq_msg_routing_id(zmq_msg_t *msg)
ZMQ_EXPORT int zmq_proxy(void *frontend, void *backend, void *capture)
struct zmq_pollitem_t zmq_pollitem_t
ZMQ_EXPORT void * zmq_ctx_new(void)
void( zmq_thread_fn)(void *)
int capture(class zmq::socket_base_t *capture_, zmq::msg_t &msg_, int more_=0)
ZMQ_EXPORT int zmq_msg_init_data(zmq_msg_t *msg, void *data, size_t size, zmq_free_fn *ffn, void *hint)
ZMQ_EXPORT int zmq_term(void *context)
int zmq_timers_execute(void *timers)
ZMQ_EXPORT void * zmq_init(int io_threads)
ZMQ_EXPORT int zmq_recvmsg(void *s, zmq_msg_t *msg, int flags)
ZMQ_EXPORT int zmq_msg_copy(zmq_msg_t *dest, zmq_msg_t *src)
int zmq_poller_wait(void *poller, zmq_poller_event_t *event, long timeout)
ZMQ_EXPORT int zmq_device(int type, void *frontend, void *backend)
ZMQ_EXPORT int zmq_recv(void *s, void *buf, size_t len, int flags)
ZMQ_EXPORT int zmq_errno(void)
ZMQ_EXPORT int zmq_send_const(void *s, const void *buf, size_t len, int flags)
void handler(int timer_id, void *arg)
ZMQ_EXPORT unsigned long zmq_stopwatch_stop(void *watch_)
ZMQ_EXPORT void * zmq_msg_data(zmq_msg_t *msg)
ZMQ_EXPORT void * zmq_socket(void *, int type)
int zmq_timers_cancel(void *timers, int timer_id)
ZMQ_EXPORT void zmq_version(int *major, int *minor, int *patch)
ZMQ_EXPORT int zmq_socket_monitor(void *s, const char *addr, int events)
int zmq_timers_destroy(void **timers_p)
ZMQ_EXPORT void zmq_threadclose(void *thread)
ZMQ_EXPORT int zmq_ctx_set(void *context, int option, int optval)
ZMQ_EXPORT int zmq_getsockopt(void *s, int option, void *optval, size_t *optvallen)
int zmq_timers_add(void *timers, size_t interval, zmq_timer_fn handler, void *arg)
ZMQ_EXPORT int zmq_msg_send(zmq_msg_t *msg, void *s, int flags)
long zmq_timers_timeout(void *timers)
ZMQ_EXPORT void zmq_atomic_counter_set(void *counter, int value)
struct zmq_poller_event_t zmq_poller_event_t
void ffn(void *data, void *hint)
int zmq_timers_reset(void *timers, int timer_id)
ZMQ_EXPORT int zmq_connect(void *s, const char *addr)
int zmq_join(void *s, const char *group)
ZMQ_EXPORT int zmq_close(void *s)
void * zmq_timers_new(void)
ZMQ_EXPORT int zmq_atomic_counter_dec(void *counter)
ZMQ_EXPORT int zmq_ctx_shutdown(void *context)
ZMQ_EXPORT int zmq_sendmsg(void *s, zmq_msg_t *msg, int flags)
ZMQ_EXPORT uint8_t * zmq_z85_decode(uint8_t *dest, const char *string)
ZMQ_EXPORT int zmq_msg_recv(zmq_msg_t *msg, void *s, int flags)
ZMQ_EXPORT const char * zmq_strerror(int errnum)
ZMQ_EXPORT int zmq_msg_more(zmq_msg_t *msg)
int zmq_poller_modify(void *poller, void *socket, short events)
ZMQ_EXPORT int zmq_ctx_destroy(void *context)
ZMQ_EXPORT int zmq_sendiov(void *s, struct iovec *iov, size_t count, int flags)
ZMQ_EXPORT void zmq_atomic_counter_destroy(void **counter_p)
ZMQ_EXPORT int zmq_curve_keypair(char *z85_public_key, char *z85_secret_key)
ZMQ_EXPORT const char * zmq_msg_gets(zmq_msg_t *msg, const char *property)
void( zmq_free_fn)(void *data, void *hint)
int zmq_poller_remove(void *poller, void *socket)
ZMQ_EXPORT int zmq_poll(zmq_pollitem_t *items, int nitems, long timeout)
ZMQ_EXPORT void zmq_sleep(int seconds_)
const char * zmq_msg_group(zmq_msg_t *msg)
ZMQ_EXPORT int zmq_send(void *s, const void *buf, size_t len, int flags)
ZMQ_EXPORT int zmq_msg_get(zmq_msg_t *msg, int property)
int zmq_leave(void *s, const char *group)
ZMQ_EXPORT int zmq_bind(void *s, const char *addr)
ZMQ_EXPORT int zmq_atomic_counter_inc(void *counter)
ZMQ_EXPORT int zmq_atomic_counter_value(void *counter)
ZMQ_EXPORT int zmq_ctx_term(void *context)
ZMQ_EXPORT void * zmq_stopwatch_start(void)
ZMQ_EXPORT int zmq_msg_set(zmq_msg_t *msg, int property, int optval)
ZMQ_EXPORT int zmq_msg_close(zmq_msg_t *msg)
ZMQ_EXPORT int zmq_ctx_get(void *context, int option)
ZMQ_EXPORT int zmq_msg_init_size(zmq_msg_t *msg, size_t size)
ZMQ_EXPORT void * zmq_threadstart(zmq_thread_fn *func, void *arg)
ZMQ_EXPORT int zmq_has(const char *capability)
int zmq_timers_set_interval(void *timers, int timer_id, size_t interval)
ZMQ_EXPORT size_t zmq_msg_size(zmq_msg_t *msg)
int zmq_msg_set_group(zmq_msg_t *msg, const char *group)
ZMQ_EXPORT int zmq_disconnect(void *s, const char *addr)
ZMQ_EXPORT char * zmq_z85_encode(char *dest, const uint8_t *data, size_t size)
int zmq_msg_set_routing_id(zmq_msg_t *msg, uint32_t routing_id)
union zmq_msg_t zmq_msg_t
ZMQ_EXPORT int zmq_proxy_steerable(void *frontend, void *backend, void *capture, void *control)
int zmq_poller_modify_fd(void *poller, int fd, short events)
ZMQ_EXPORT void * zmq_atomic_counter_new(void)
ZMQ_EXPORT int zmq_msg_move(zmq_msg_t *dest, zmq_msg_t *src)
ZMQ_EXPORT int zmq_msg_init(zmq_msg_t *msg)
int zmq_poller_destroy(void **poller_p)
void( zmq_timer_fn)(int timer_id, void *arg)
void * zmq_poller_new(void)