OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ | 5 #ifndef DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ |
6 #define DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ | 6 #define DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ |
7 | 7 |
8 #import <IOBluetooth/IOBluetooth.h> | 8 #import <IOBluetooth/IOBluetooth.h> |
9 #import <IOKit/IOReturn.h> | 9 #import <IOKit/IOReturn.h> |
10 #include <stddef.h> | 10 #include <stddef.h> |
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 // UUID of the profile being connected to, or that the socket is listening on. | 166 // UUID of the profile being connected to, or that the socket is listening on. |
167 device::BluetoothUUID uuid_; | 167 device::BluetoothUUID uuid_; |
168 | 168 |
169 // Simple helpers that register for OS notifications and forward them to | 169 // Simple helpers that register for OS notifications and forward them to |
170 // |this| profile. | 170 // |this| profile. |
171 base::scoped_nsobject<BluetoothRfcommConnectionListener> | 171 base::scoped_nsobject<BluetoothRfcommConnectionListener> |
172 rfcomm_connection_listener_; | 172 rfcomm_connection_listener_; |
173 base::scoped_nsobject<BluetoothL2capConnectionListener> | 173 base::scoped_nsobject<BluetoothL2capConnectionListener> |
174 l2cap_connection_listener_; | 174 l2cap_connection_listener_; |
175 | 175 |
176 // A handle to the service record registered in the system SDP server. | 176 // The service record registered in the system SDP server, used to |
177 // Used to eventually unregister the service. | 177 // eventually unregister the service. |
178 BluetoothSDPServiceRecordHandle service_record_handle_; | 178 base::scoped_nsobject<IOBluetoothSDPServiceRecord> service_record_; |
179 | 179 |
180 // The channel used to issue commands. | 180 // The channel used to issue commands. |
181 std::unique_ptr<BluetoothChannelMac> channel_; | 181 std::unique_ptr<BluetoothChannelMac> channel_; |
182 | 182 |
183 // Connection callbacks -- when a pending async connection is active. | 183 // Connection callbacks -- when a pending async connection is active. |
184 std::unique_ptr<ConnectCallbacks> connect_callbacks_; | 184 std::unique_ptr<ConnectCallbacks> connect_callbacks_; |
185 | 185 |
186 // Packets received while there is no pending "receive" callback. | 186 // Packets received while there is no pending "receive" callback. |
187 std::queue<scoped_refptr<net::IOBufferWithSize> > receive_queue_; | 187 std::queue<scoped_refptr<net::IOBufferWithSize> > receive_queue_; |
188 | 188 |
189 // Receive callbacks -- when a receive call is active. | 189 // Receive callbacks -- when a receive call is active. |
190 std::unique_ptr<ReceiveCallbacks> receive_callbacks_; | 190 std::unique_ptr<ReceiveCallbacks> receive_callbacks_; |
191 | 191 |
192 // Send queue -- one entry per pending send operation. | 192 // Send queue -- one entry per pending send operation. |
193 std::queue<linked_ptr<SendRequest>> send_queue_; | 193 std::queue<linked_ptr<SendRequest>> send_queue_; |
194 | 194 |
195 // The pending request to an Accept() call, or null if there is no pending | 195 // The pending request to an Accept() call, or null if there is no pending |
196 // request. | 196 // request. |
197 std::unique_ptr<AcceptRequest> accept_request_; | 197 std::unique_ptr<AcceptRequest> accept_request_; |
198 | 198 |
199 // Queue of incoming connections. | 199 // Queue of incoming connections. |
200 std::queue<linked_ptr<BluetoothChannelMac>> accept_queue_; | 200 std::queue<linked_ptr<BluetoothChannelMac>> accept_queue_; |
201 | 201 |
202 DISALLOW_COPY_AND_ASSIGN(BluetoothSocketMac); | 202 DISALLOW_COPY_AND_ASSIGN(BluetoothSocketMac); |
203 }; | 203 }; |
204 | 204 |
205 } // namespace device | 205 } // namespace device |
206 | 206 |
207 #endif // DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ | 207 #endif // DEVICE_BLUETOOTH_BLUETOOTH_SOCKET_MAC_H_ |
OLD | NEW |