| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a | 
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. | 
| 4 | 4 | 
| 5 #ifndef BIN_EVENTHANDLER_MACOS_H_ | 5 #ifndef BIN_EVENTHANDLER_MACOS_H_ | 
| 6 #define BIN_EVENTHANDLER_MACOS_H_ | 6 #define BIN_EVENTHANDLER_MACOS_H_ | 
| 7 | 7 | 
| 8 #if !defined(BIN_EVENTHANDLER_H_) | 8 #if !defined(BIN_EVENTHANDLER_H_) | 
| 9 #error Do not include eventhandler_macos.h directly; use eventhandler.h instead. | 9 #error Do not include eventhandler_macos.h directly; use eventhandler.h instead. | 
| 10 #endif | 10 #endif | 
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 82 | 82 | 
| 83 | 83 | 
| 84 class EventHandlerImplementation { | 84 class EventHandlerImplementation { | 
| 85  public: | 85  public: | 
| 86   EventHandlerImplementation(); | 86   EventHandlerImplementation(); | 
| 87   ~EventHandlerImplementation(); | 87   ~EventHandlerImplementation(); | 
| 88 | 88 | 
| 89   // Gets the socket data structure for a given file | 89   // Gets the socket data structure for a given file | 
| 90   // descriptor. Creates a new one if one is not found. | 90   // descriptor. Creates a new one if one is not found. | 
| 91   SocketData* GetSocketData(intptr_t fd, bool* is_new); | 91   SocketData* GetSocketData(intptr_t fd, bool* is_new); | 
| 92   void SendData(intptr_t id, Dart_Port dart_port, int64_t data); | 92   void Notify(intptr_t id, Dart_Port dart_port, int64_t data); | 
| 93   void Start(EventHandler* handler); | 93   void Start(EventHandler* handler); | 
| 94   void Shutdown(); | 94   void Shutdown(); | 
| 95 | 95 | 
| 96  private: | 96  private: | 
| 97   int64_t GetTimeout(); | 97   int64_t GetTimeout(); | 
| 98   void HandleEvents(struct kevent* events, int size); | 98   void HandleEvents(struct kevent* events, int size); | 
| 99   void HandleTimeout(); | 99   void HandleTimeout(); | 
| 100   static void EventHandlerEntry(uword args); | 100   static void EventHandlerEntry(uword args); | 
| 101   void WakeupHandler(intptr_t id, Dart_Port dart_port, int64_t data); | 101   void WakeupHandler(intptr_t id, Dart_Port dart_port, int64_t data); | 
| 102   void HandleInterruptFd(); | 102   void HandleInterruptFd(); | 
| 103   void SetPort(intptr_t fd, Dart_Port dart_port, intptr_t mask); | 103   void SetPort(intptr_t fd, Dart_Port dart_port, intptr_t mask); | 
| 104   intptr_t GetEvents(struct kevent* event, SocketData* sd); | 104   intptr_t GetEvents(struct kevent* event, SocketData* sd); | 
| 105   static void* GetHashmapKeyFromFd(intptr_t fd); | 105   static void* GetHashmapKeyFromFd(intptr_t fd); | 
| 106   static uint32_t GetHashmapHashFromFd(intptr_t fd); | 106   static uint32_t GetHashmapHashFromFd(intptr_t fd); | 
| 107 | 107 | 
| 108   HashMap socket_map_; | 108   HashMap socket_map_; | 
| 109   TimeoutQueue timeout_queue_; | 109   TimeoutQueue timeout_queue_; | 
| 110   bool shutdown_; | 110   bool shutdown_; | 
| 111   int interrupt_fds_[2]; | 111   int interrupt_fds_[2]; | 
| 112   int kqueue_fd_; | 112   int kqueue_fd_; | 
| 113 }; | 113 }; | 
| 114 | 114 | 
| 115 }  // namespace bin | 115 }  // namespace bin | 
| 116 }  // namespace dart | 116 }  // namespace dart | 
| 117 | 117 | 
| 118 #endif  // BIN_EVENTHANDLER_MACOS_H_ | 118 #endif  // BIN_EVENTHANDLER_MACOS_H_ | 
| OLD | NEW | 
|---|