OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 IPC_IPC_CHANNEL_WIN_H_ | 5 #ifndef IPC_IPC_CHANNEL_WIN_H_ |
6 #define IPC_IPC_CHANNEL_WIN_H_ | 6 #define IPC_IPC_CHANNEL_WIN_H_ |
7 | 7 |
8 #include "ipc/ipc_channel.h" | 8 #include "ipc/ipc_channel.h" |
9 | 9 |
10 #include <stdint.h> | 10 #include <stdint.h> |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 // this queue are placed in the output_queue_. The double queue is | 100 // this queue are placed in the output_queue_. The double queue is |
101 // unfortunate, but is necessary because messages with brokerable attachments | 101 // unfortunate, but is necessary because messages with brokerable attachments |
102 // can generate multiple messages to be sent (possibly from other channels). | 102 // can generate multiple messages to be sent (possibly from other channels). |
103 // Some of these generated messages cannot be sent until |peer_pid_| has been | 103 // Some of these generated messages cannot be sent until |peer_pid_| has been |
104 // configured. | 104 // configured. |
105 // As soon as |peer_pid| has been configured, there is no longer any need for | 105 // As soon as |peer_pid| has been configured, there is no longer any need for |
106 // |prelim_queue_|. All messages are flushed, and no new messages are added. | 106 // |prelim_queue_|. All messages are flushed, and no new messages are added. |
107 std::queue<Message*> prelim_queue_; | 107 std::queue<Message*> prelim_queue_; |
108 | 108 |
109 // Messages to be sent are queued here. | 109 // Messages to be sent are queued here. |
110 std::queue<Message*> output_queue_; | 110 std::queue<OutputElement*> output_queue_; |
111 | 111 |
112 // In server-mode, we have to wait for the client to connect before we | 112 // In server-mode, we have to wait for the client to connect before we |
113 // can begin reading. We make use of the input_state_ when performing | 113 // can begin reading. We make use of the input_state_ when performing |
114 // the connect operation in overlapped mode. | 114 // the connect operation in overlapped mode. |
115 bool waiting_connect_; | 115 bool waiting_connect_; |
116 | 116 |
117 // This flag is set when processing incoming messages. It is used to | 117 // This flag is set when processing incoming messages. It is used to |
118 // avoid recursing through ProcessIncomingMessages, which could cause | 118 // avoid recursing through ProcessIncomingMessages, which could cause |
119 // problems. TODO(darin): make this unnecessary | 119 // problems. TODO(darin): make this unnecessary |
120 bool processing_incoming_; | 120 bool processing_incoming_; |
(...skipping 15 matching lines...) Expand all Loading... |
136 // |broker_| must outlive this instance. | 136 // |broker_| must outlive this instance. |
137 AttachmentBroker* broker_; | 137 AttachmentBroker* broker_; |
138 | 138 |
139 base::WeakPtrFactory<ChannelWin> weak_factory_; | 139 base::WeakPtrFactory<ChannelWin> weak_factory_; |
140 DISALLOW_COPY_AND_ASSIGN(ChannelWin); | 140 DISALLOW_COPY_AND_ASSIGN(ChannelWin); |
141 }; | 141 }; |
142 | 142 |
143 } // namespace IPC | 143 } // namespace IPC |
144 | 144 |
145 #endif // IPC_IPC_CHANNEL_WIN_H_ | 145 #endif // IPC_IPC_CHANNEL_WIN_H_ |
OLD | NEW |