Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(184)

Side by Side Diff: ppapi/thunk/ppb_tcp_socket_private_api.h

Issue 10081020: PPAPI: Make blocking completion callbacks work. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: export AssertLockHeld Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_ 5 #ifndef PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_
6 #define PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_ 6 #define PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_
7 7
8 #include "base/memory/ref_counted.h"
8 #include "ppapi/c/private/ppb_tcp_socket_private.h" 9 #include "ppapi/c/private/ppb_tcp_socket_private.h"
9 #include "ppapi/thunk/ppapi_thunk_export.h" 10 #include "ppapi/thunk/ppapi_thunk_export.h"
10 11
11 namespace ppapi { 12 namespace ppapi {
13
14 class TrackedCallback;
15
12 namespace thunk { 16 namespace thunk {
13 17
14 class PPAPI_THUNK_EXPORT PPB_TCPSocket_Private_API { 18 class PPAPI_THUNK_EXPORT PPB_TCPSocket_Private_API {
15 public: 19 public:
16 virtual ~PPB_TCPSocket_Private_API() {} 20 virtual ~PPB_TCPSocket_Private_API() {}
17 21
18 virtual int32_t Connect(const char* host, 22 virtual int32_t Connect(const char* host,
19 uint16_t port, 23 uint16_t port,
20 PP_CompletionCallback callback) = 0; 24 scoped_refptr<TrackedCallback> callback) = 0;
21 virtual int32_t ConnectWithNetAddress(const PP_NetAddress_Private* addr, 25 virtual int32_t ConnectWithNetAddress(
22 PP_CompletionCallback callback) = 0; 26 const PP_NetAddress_Private* addr,
27 scoped_refptr<TrackedCallback> callback) = 0;
23 virtual PP_Bool GetLocalAddress(PP_NetAddress_Private* local_addr) = 0; 28 virtual PP_Bool GetLocalAddress(PP_NetAddress_Private* local_addr) = 0;
24 virtual PP_Bool GetRemoteAddress(PP_NetAddress_Private* remote_addr) = 0; 29 virtual PP_Bool GetRemoteAddress(PP_NetAddress_Private* remote_addr) = 0;
25 virtual int32_t SSLHandshake(const char* server_name, 30 virtual int32_t SSLHandshake(const char* server_name,
26 uint16_t server_port, 31 uint16_t server_port,
27 PP_CompletionCallback callback) = 0; 32 scoped_refptr<TrackedCallback> callback) = 0;
28 virtual PP_Resource GetServerCertificate() = 0; 33 virtual PP_Resource GetServerCertificate() = 0;
29 virtual PP_Bool AddChainBuildingCertificate(PP_Resource certificate, 34 virtual PP_Bool AddChainBuildingCertificate(PP_Resource certificate,
30 PP_Bool trusted) = 0; 35 PP_Bool trusted) = 0;
31 virtual int32_t Read(char* buffer, 36 virtual int32_t Read(char* buffer,
32 int32_t bytes_to_read, 37 int32_t bytes_to_read,
33 PP_CompletionCallback callback) = 0; 38 scoped_refptr<TrackedCallback> callback) = 0;
34 virtual int32_t Write(const char* buffer, 39 virtual int32_t Write(const char* buffer,
35 int32_t bytes_to_write, 40 int32_t bytes_to_write,
36 PP_CompletionCallback callback) = 0; 41 scoped_refptr<TrackedCallback> callback) = 0;
37 virtual void Disconnect() = 0; 42 virtual void Disconnect() = 0;
38 }; 43 };
39 44
40 } // namespace thunk 45 } // namespace thunk
41 } // namespace ppapi 46 } // namespace ppapi
42 47
43 #endif // PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_ 48 #endif // PPAPI_THUNK_PPB_TCP_SOCKET_PRIVATE_API_H_
OLDNEW
« no previous file with comments | « ppapi/thunk/ppb_tcp_server_socket_private_thunk.cc ('k') | ppapi/thunk/ppb_tcp_socket_private_thunk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698