diff options
author | José Bollo <jose.bollo@iot.bzh> | 2016-04-15 16:40:38 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2016-04-15 16:40:38 +0200 |
commit | 68a8eaafe5f43480f29308bfd2ec12ad54da43f1 (patch) | |
tree | 5c8782a09cb48df20695fa6ba562e00f523d22f3 /include | |
parent | 67966a2f96613d833f493ef3773c442d35f8ed31 (diff) |
use upoll for event loop
also add '#pragma once' in headers
Change-Id: I90cc2d53ec60d4d1e66cf0f229109621e4019864
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'include')
-rw-r--r-- | include/afb-plugin.h | 7 | ||||
-rw-r--r-- | include/afb-poll-itf.h | 18 | ||||
-rw-r--r-- | include/afb-req-itf.h | 2 |
3 files changed, 14 insertions, 13 deletions
diff --git a/include/afb-plugin.h b/include/afb-plugin.h index 4064f9e9..2c9935e6 100644 --- a/include/afb-plugin.h +++ b/include/afb-plugin.h @@ -15,6 +15,8 @@ * limitations under the License. */ +#pragma once + struct afb_req; /* Plugin Type */ @@ -61,13 +63,12 @@ enum AFB_Mode { AFB_MODE_GLOBAL }; -struct afb_poll; - struct AFB_interface { int verbosity; enum AFB_Mode mode; - struct afb_poll (*poll_open)(int fd, void *closure); + const struct afb_pollitf *pollitf; + void *pollclosure; }; extern const struct AFB_plugin *pluginRegister (const struct AFB_interface *interface); diff --git a/include/afb-poll-itf.h b/include/afb-poll-itf.h index 2c8889b6..b70eb993 100644 --- a/include/afb-poll-itf.h +++ b/include/afb-poll-itf.h @@ -15,17 +15,15 @@ * limitations under the License. */ -struct afb_poll_itf -{ - int (*on_readable)(void *, void (*cb)(void *)); - int (*on_writable)(void *, void (*cb)(void *)); - int (*on_hangup)(void *, void (*cb)(void *)); - void (*close)(void *data); -}; +#pragma once -struct afb_poll +struct afb_pollitf { - const struct afb_poll_itf *itf; - void *data; + int (*wait)(int timeout, void *pollclosure); + void *(*open)(int fd, void *closure, void *pollclosure); + int (*on_readable)(void *hndl, void (*cb)(void *closure)); + int (*on_writable)(void *hndl, void (*cb)(void *closure)); + void (*on_hangup)(void *hndl, void (*cb)(void *closure)); + void (*close)(void *hndl); }; diff --git a/include/afb-req-itf.h b/include/afb-req-itf.h index 7f7472f1..357ffd7b 100644 --- a/include/afb-req-itf.h +++ b/include/afb-req-itf.h @@ -15,6 +15,8 @@ * limitations under the License. */ +#pragma once + struct json_object; struct afb_arg { |