summaryrefslogtreecommitdiff
path: root/include/mbgl/platform/platform_run_loop.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/mbgl/platform/platform_run_loop.hpp')
-rw-r--r--include/mbgl/platform/platform_run_loop.hpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/include/mbgl/platform/platform_run_loop.hpp b/include/mbgl/platform/platform_run_loop.hpp
index c3b3d4c198..dce328f5d5 100644
--- a/include/mbgl/platform/platform_run_loop.hpp
+++ b/include/mbgl/platform/platform_run_loop.hpp
@@ -1,16 +1,27 @@
#pragma once
-#include <mbgl/util/run_loop.hpp>
+#include <functional>
namespace mbgl {
-class PlatformRunLoop
+class PlatformRunLoop {
public:
+ virtual ~PlatformRunLoop() = default;
+
+ virtual void *handle() = 0;
+
virtual void run() = 0;
virtual void runOnce() = 0;
virtual void stop() = 0;
- virtual void addWatch(int fd, Event, std::function<void(int, util::RunLoop::Event)>&& callback) = 0;
+ enum class Event : uint8_t {
+ None = 0,
+ Read = 1,
+ Write = 2,
+ ReadWrite = Read | Write,
+ };
+
+ virtual void addWatch(int fd, Event, std::function<void(int, Event)>&& callback) = 0;
virtual void removeWatch(int fd) = 0;
};