mirror of
https://github.com/faye/websocket-driver-ruby.git
synced 2025-11-01 13:59:38 +00:00
30 lines
1.4 KiB
C
30 lines
1.4 KiB
C
#ifndef _wsd_observer_h
|
|
#define _wsd_observer_h
|
|
|
|
#include "message.h"
|
|
|
|
typedef struct wsd_Observer wsd_Observer;
|
|
|
|
typedef void (*wsd_cb_on_close)(void *receiver, int code, uint64_t length, uint8_t *reason);
|
|
typedef void (*wsd_cb_on_error)(void *receiver, int code, char *reason);
|
|
typedef void (*wsd_cb_on_frame)(void *receiver, wsd_Frame *frame);
|
|
typedef void (*wsd_cb_on_message)(void *receiver, wsd_Message *message);
|
|
|
|
wsd_Observer * wsd_Observer_create(void *receiver,
|
|
wsd_cb_on_error on_error,
|
|
wsd_cb_on_message on_message,
|
|
wsd_cb_on_close on_close,
|
|
wsd_cb_on_frame on_ping,
|
|
wsd_cb_on_frame on_pong,
|
|
wsd_cb_on_frame on_frame);
|
|
|
|
void wsd_Observer_destroy(wsd_Observer *observer);
|
|
void wsd_Observer_on_error(wsd_Observer *observer, int code, char *reason);
|
|
void wsd_Observer_on_message(wsd_Observer *observer, wsd_Message *message);
|
|
void wsd_Observer_on_close(wsd_Observer *observer, int code, uint64_t length, uint8_t *reason);
|
|
void wsd_Observer_on_ping(wsd_Observer *observer, wsd_Frame *frame);
|
|
void wsd_Observer_on_pong(wsd_Observer *observer, wsd_Frame *frame);
|
|
void wsd_Observer_on_frame(wsd_Observer *observer, wsd_Frame *frame);
|
|
|
|
#endif
|