OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 5 #ifndef MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
6 #define MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 6 #define MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <queue> | 9 #include <queue> |
10 #include <unordered_map> | 10 #include <unordered_map> |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
263 // All other fields below must only be accessed on the I/O thread, i.e., the | 263 // All other fields below must only be accessed on the I/O thread, i.e., the |
264 // thread on which core_->io_task_runner() runs tasks. | 264 // thread on which core_->io_task_runner() runs tasks. |
265 | 265 |
266 // Channels to children during handshake. | 266 // Channels to children during handshake. |
267 NodeMap pending_children_; | 267 NodeMap pending_children_; |
268 | 268 |
269 // Indicates whether this object should delete itself on IO thread shutdown. | 269 // Indicates whether this object should delete itself on IO thread shutdown. |
270 // Must only be accessed from the IO thread. | 270 // Must only be accessed from the IO thread. |
271 bool destroy_on_io_thread_shutdown_ = false; | 271 bool destroy_on_io_thread_shutdown_ = false; |
272 | 272 |
273 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 273 #if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_NACL) |
274 // Broker for sync shared buffer creation (non-Mac posix-only) in children. | 274 // Broker for sync shared buffer creation (non-Mac posix-only) in children. |
275 std::unique_ptr<Broker> broker_; | 275 std::unique_ptr<Broker> broker_; |
276 #endif | 276 #endif |
277 | 277 |
278 #if defined(OS_MACOSX) && !defined(OS_IOS) | 278 #if defined(OS_MACOSX) && !defined(OS_IOS) |
279 base::Lock mach_port_relay_lock_; | 279 base::Lock mach_port_relay_lock_; |
280 // Relay for transferring mach ports to/from children. | 280 // Relay for transferring mach ports to/from children. |
281 std::unique_ptr<MachPortRelay> mach_port_relay_; | 281 std::unique_ptr<MachPortRelay> mach_port_relay_; |
282 #endif | 282 #endif |
283 | 283 |
284 DISALLOW_COPY_AND_ASSIGN(NodeController); | 284 DISALLOW_COPY_AND_ASSIGN(NodeController); |
285 }; | 285 }; |
286 | 286 |
287 } // namespace edk | 287 } // namespace edk |
288 } // namespace mojo | 288 } // namespace mojo |
289 | 289 |
290 #endif // MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 290 #endif // MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
OLD | NEW |