| Index: runtime/bin/eventhandler_macos.h
|
| diff --git a/runtime/bin/eventhandler_macos.h b/runtime/bin/eventhandler_macos.h
|
| index c9ea78d875c93d047e6209ee1d63d247d1663e34..c6a138fd7ef7ee140c34379a8d12614481936822 100644
|
| --- a/runtime/bin/eventhandler_macos.h
|
| +++ b/runtime/bin/eventhandler_macos.h
|
| @@ -6,17 +6,28 @@
|
| #define BIN_EVENTHANDLER_MACOS_H_
|
|
|
|
|
| -typedef struct {
|
| +class InterruptMessage {
|
| + public:
|
| intptr_t id;
|
| Dart_Port dart_port;
|
| int64_t data;
|
| -} InterruptMessage;
|
| +};
|
|
|
|
|
| -typedef struct {
|
| - Dart_Port dart_port;
|
| - intptr_t mask;
|
| -} PortData;
|
| +class SocketData {
|
| + public:
|
| + void FillPollEvents(struct pollfd* pollfds);
|
| + bool IsListeningSocket() { return (_mask & (1 << kListeningSocket)) != 0; }
|
| +
|
| + Dart_Port port() { return _port; }
|
| + void set_port(Dart_Port port) { _port = port; }
|
| + intptr_t mask() { return _mask; }
|
| + void set_mask(intptr_t mask) { _mask = mask; }
|
| +
|
| + private:
|
| + Dart_Port _port;
|
| + intptr_t _mask;
|
| +};
|
|
|
|
|
| class EventHandlerImplementation {
|
| @@ -24,6 +35,7 @@ class EventHandlerImplementation {
|
| EventHandlerImplementation();
|
| ~EventHandlerImplementation();
|
|
|
| + SocketData* GetSocketData(intptr_t fd);
|
| void SendData(intptr_t id, Dart_Port dart_port, intptr_t data);
|
| void StartEventHandler();
|
|
|
| @@ -41,14 +53,11 @@ class EventHandlerImplementation {
|
| void WakeupHandler(intptr_t id, Dart_Port dart_port, int64_t data);
|
| void HandleInterruptFd();
|
| void SetPort(intptr_t fd, Dart_Port dart_port, intptr_t mask);
|
| - Dart_Port PortFor(intptr_t fd);
|
| - bool IsListeningSocket(intptr_t fd);
|
| intptr_t GetPollEvents(struct pollfd* pollfd);
|
| - void SetPollEvents(struct pollfd* pollfds, intptr_t mask);
|
|
|
| - PortData* port_map_;
|
| - intptr_t port_map_entries_;
|
| - intptr_t port_map_size_;
|
| + SocketData* socket_map_;
|
| + intptr_t socket_map_entries_;
|
| + intptr_t socket_map_size_;
|
| int64_t timeout_; // Time for next timeout.
|
| Dart_Port timeout_port_;
|
| int interrupt_fds_[2];
|
|
|