summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/afb-plugin.h22
-rw-r--r--include/afb-pollmgr-itf.h61
2 files changed, 18 insertions, 65 deletions
diff --git a/include/afb-plugin.h b/include/afb-plugin.h
index dfb6fbad..ce78e840 100644
--- a/include/afb-plugin.h
+++ b/include/afb-plugin.h
@@ -18,7 +18,6 @@
#pragma once
#include "afb-req-itf.h"
-#include "afb-pollmgr-itf.h"
#include "afb-evmgr-itf.h"
/* Plugin Type */
@@ -64,9 +63,14 @@ enum AFB_Mode {
AFB_MODE_GLOBAL
};
+struct sd_event;
+struct sd_bus;
+
struct afb_daemon_itf {
struct afb_evmgr (*get_evmgr)(void *closure);
- struct afb_pollmgr (*get_pollmgr)(void *closure);
+ struct sd_event *(*get_event_loop)(void *closure);
+ struct sd_bus *(*get_user_bus)(void *closure);
+ struct sd_bus *(*get_system_bus)(void *closure);
};
struct afb_daemon {
@@ -88,9 +92,19 @@ static inline struct afb_evmgr afb_daemon_get_evmgr(struct afb_daemon daemon)
return daemon.itf->get_evmgr(daemon.closure);
}
-static inline struct afb_pollmgr afb_daemon_get_pollmgr(struct afb_daemon daemon)
+static inline struct sd_event *afb_daemon_get_event_loop(struct afb_daemon daemon)
+{
+ return daemon.itf->get_event_loop(daemon.closure);
+}
+
+static inline struct sd_bus *afb_daemon_get_user_bus(struct afb_daemon daemon)
+{
+ return daemon.itf->get_user_bus(daemon.closure);
+}
+
+static inline struct sd_bus *afb_daemon_get_system_bus(struct afb_daemon daemon)
{
- return daemon.itf->get_pollmgr(daemon.closure);
+ return daemon.itf->get_system_bus(daemon.closure);
}
diff --git a/include/afb-pollmgr-itf.h b/include/afb-pollmgr-itf.h
deleted file mode 100644
index c3a62c17..00000000
--- a/include/afb-pollmgr-itf.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright 2016 IoT.bzh
- * Author: José Bollo <jose.bollo@iot.bzh>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-
-struct afb_pollmgr_itf
-{
- 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);
-};
-
-struct afb_pollmgr
-{
- const struct afb_pollmgr_itf *itf;
- void *closure;
-};
-
-static inline int afb_pollmgr_wait(struct afb_pollmgr pollmgr, int timeout)
-{
- return pollmgr.itf->wait(timeout, pollmgr.closure);
-}
-
-static inline void *afb_pollmgr_open(struct afb_pollmgr pollmgr, int fd, void *closure)
-{
- return pollmgr.itf->open(fd, closure, pollmgr.closure);
-}
-
-static inline int afb_pollmgr_on_readable(struct afb_pollmgr pollmgr, void *hndl, void (*cb)(void *closure))
-{
- return pollmgr.itf->on_readable(hndl, cb);
-}
-
-static inline int afb_pollmgr_on_writable(struct afb_pollmgr pollmgr, void *hndl, void (*cb)(void *closure))
-{
- return pollmgr.itf->on_writable(hndl, cb);
-}
-
-static inline void afb_pollmgr_on_hangup(struct afb_pollmgr pollmgr, void *hndl, void (*cb)(void *closure))
-{
- pollmgr.itf->on_hangup(hndl, cb);
-}
-
-