/*
- * Copyright (C) 2018 "IoT.bzh"
+ * Copyright (C) 2018, 2019 "IoT.bzh"
* Author José Bollo <jose.bollo@iot.bzh>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* limitations under the License.
*/
+#include "evmgr.h"
#include "fdev.h"
+#include "jobs.h"
-#include "afb-systemd.h"
+#if WITH_SYSTEMD
+
+#include "systemd.h"
#include "fdev-systemd.h"
struct fdev *afb_fdev_create(int fd)
{
- return fdev_systemd_create(afb_systemd_get_event_loop(), fd);
+ jobs_acquire_event_manager();
+ return fdev_systemd_create(systemd_get_event_loop(), fd);
+}
+
+#endif
+#if WITH_FDEV_EPOLL
+
+#include "evmgr.h"
+#include "fdev-epoll.h"
+
+struct fdev *afb_fdev_create(int fd)
+{
+ struct evmgr *evmgr = jobs_acquire_event_manager();
+ return fdev_epoll_add(evmgr_get_fdev_epoll(evmgr), fd);
}
+
+#endif