reactor.h File Reference

Reactor API for proton. More...

`#include <proton/import_export.h>`
`#include <proton/type_compat.h>`
`#include <proton/event.h>`
`#include <proton/selectable.h>`
`#include <proton/ssl.h>`

Go to the source code of this file.

## Typedefs

typedef struct pn_reactor_t | pn_reactor_t
typedef struct pn_acceptor_t | pn_acceptor_t
typedef struct pn_timer_t | pn_timer_t
typedef struct pn_task_t | pn_task_t

## Functions

PN_EXTERN pn_handler_t * | pn_handler (void(*dispatch)(pn_handler_t *, pn_event_t *, pn_event_type_t))
PN_EXTERN pn_handler_t * | pn_handler_new (void(*dispatch)(pn_handler_t *, pn_event_t *, pn_event_type_t), size_t size, void(*finalize)(pn_handler_t *))
PN_EXTERN void | pn_handler_free (pn_handler_t *handler)
PN_EXTERN void * | pn_handler_mem (pn_handler_t *handler)
PN_EXTERN void | pn_handler_add (pn_handler_t *handler, pn_handler_t *child)
PN_EXTERN void | pn_handler_clear (pn_handler_t *handler)
PN_EXTERN void | pn_handler_dispatch (pn_handler_t *handler, pn_event_t *event, pn_event_type_t type)
PN_EXTERN pn_reactor_t * | pn_reactor (void)
PN_EXTERN pn_record_t * | pn_reactor_attachments (pn_reactor_t *reactor)
PN_EXTERN pn_millis_t | pn_reactor_get_timeout (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_set_timeout (pn_reactor_t *reactor, pn_millis_t timeout)
PN_EXTERN pn_timestamp_t | pn_reactor_mark (pn_reactor_t *reactor)
PN_EXTERN pn_timestamp_t | pn_reactor_now (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_yield (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_free (pn_reactor_t *reactor)
PN_EXTERN pn_collector_t * | pn_reactor_collector (pn_reactor_t *reactor)
PN_EXTERN pn_handler_t * | pn_reactor_get_global_handler (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_set_global_handler (pn_reactor_t *reactor, pn_handler_t *handler)
PN_EXTERN pn_handler_t * | pn_reactor_get_handler (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_set_handler (pn_reactor_t *reactor, pn_handler_t *handler)
PN_EXTERN pn_io_t * | pn_reactor_io (pn_reactor_t *reactor)
PN_EXTERN pn_list_t * | pn_reactor_children (pn_reactor_t *reactor)
PN_EXTERN pn_selectable_t * | pn_reactor_selectable (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_update (pn_reactor_t *reactor, pn_selectable_t *selectable)
PN_EXTERN pn_acceptor_t * | pn_reactor_acceptor (pn_reactor_t *reactor, const char *host, const char *port, pn_handler_t *handler)
PN_EXTERN pn_connection_t * | pn_reactor_connection_to_host (pn_reactor_t *reactor, const char *host, const char *port, pn_handler_t *handler)
| Create an outgoing connection that will be managed by the reactor. More...
PN_EXTERN pn_connection_t * | pn_reactor_connection (pn_reactor_t *reactor, pn_handler_t *handler)
| Create an outgoing connection that will be managed by the reactor. More...
PN_EXTERN void | pn_reactor_set_connection_host (pn_reactor_t *reactor, pn_connection_t *connection, const char *host, const char *port)
| Change the host address used by an outgoing reactor connection. More...
PN_EXTERN const char * | pn_reactor_get_connection_address (pn_reactor_t *reactor, pn_connection_t *connection)
| Retrieve the peer host address for a reactor connection. More...
PN_EXTERN int | pn_reactor_wakeup (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_start (pn_reactor_t *reactor)
PN_EXTERN bool | pn_reactor_quiesced (pn_reactor_t *reactor)
PN_EXTERN bool | pn_reactor_process (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_stop (pn_reactor_t *reactor)
PN_EXTERN void | pn_reactor_run (pn_reactor_t *reactor)
PN_EXTERN pn_task_t * | pn_reactor_schedule (pn_reactor_t *reactor, int delay, pn_handler_t *handler)
PN_EXTERN void | pn_acceptor_set_ssl_domain (pn_acceptor_t *acceptor, pn_ssl_domain_t *domain)
PN_EXTERN void | pn_acceptor_close (pn_acceptor_t *acceptor)
PN_EXTERN pn_acceptor_t * | pn_connection_acceptor (pn_connection_t *connection)
PN_EXTERN pn_timer_t * | pn_timer (pn_collector_t *collector)
PN_EXTERN pn_timestamp_t | pn_timer_deadline (pn_timer_t *timer)
PN_EXTERN void | pn_timer_tick (pn_timer_t *timer, pn_timestamp_t now)
PN_EXTERN pn_task_t * | pn_timer_schedule (pn_timer_t *timer, pn_timestamp_t deadline)
PN_EXTERN int | pn_timer_tasks (pn_timer_t *timer)
PN_EXTERN pn_record_t * | pn_task_attachments (pn_task_t *task)
PN_EXTERN void | pn_task_cancel (pn_task_t *task)
PN_EXTERN pn_reactor_t * | pn_class_reactor (const pn_class_t *clazz, void *object)
PN_EXTERN pn_reactor_t * | pn_object_reactor (void *object)
PN_EXTERN pn_reactor_t * | pn_event_reactor (pn_event_t *event)
PN_EXTERN pn_handler_t * | pn_record_get_handler (pn_record_t *record)
PN_EXTERN void | pn_record_set_handler (pn_record_t *record, pn_handler_t *handler)

## Detailed Description

Reactor API for proton.