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

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

Issue 10081020: PPAPI: Make blocking completion callbacks work. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: try again Created 8 years, 7 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) 2011 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_TRANSPORT_API_H_ 5 #ifndef PPAPI_THUNK_PPB_TRANSPORT_API_H_
6 #define PPAPI_THUNK_PPB_TRANSPORT_API_H_ 6 #define PPAPI_THUNK_PPB_TRANSPORT_API_H_
7 7
8 #include "base/memory/ref_counted.h"
8 #include "ppapi/c/dev/ppb_transport_dev.h" 9 #include "ppapi/c/dev/ppb_transport_dev.h"
9 10
10 namespace ppapi { 11 namespace ppapi {
12
13 class TrackedCallback;
14
11 namespace thunk { 15 namespace thunk {
12 16
13 class PPB_Transport_API { 17 class PPB_Transport_API {
14 public: 18 public:
15 virtual ~PPB_Transport_API() {} 19 virtual ~PPB_Transport_API() {}
16 20
17 virtual PP_Bool IsWritable() = 0; 21 virtual PP_Bool IsWritable() = 0;
18 virtual int32_t SetProperty(PP_TransportProperty property, PP_Var value) = 0; 22 virtual int32_t SetProperty(PP_TransportProperty property, PP_Var value) = 0;
19 virtual int32_t Connect(PP_CompletionCallback callback) = 0; 23 virtual int32_t Connect(scoped_refptr<TrackedCallback> callback) = 0;
20 virtual int32_t GetNextAddress(PP_Var* address, 24 virtual int32_t GetNextAddress(PP_Var* address,
21 PP_CompletionCallback callback) = 0; 25 scoped_refptr<TrackedCallback> callback) = 0;
22 virtual int32_t ReceiveRemoteAddress(PP_Var address) = 0; 26 virtual int32_t ReceiveRemoteAddress(PP_Var address) = 0;
23 virtual int32_t Recv(void* data, uint32_t len, 27 virtual int32_t Recv(void* data, uint32_t len,
24 PP_CompletionCallback callback) = 0; 28 scoped_refptr<TrackedCallback> callback) = 0;
25 virtual int32_t Send(const void* data, uint32_t len, 29 virtual int32_t Send(const void* data, uint32_t len,
26 PP_CompletionCallback callback) = 0; 30 scoped_refptr<TrackedCallback> callback) = 0;
27 virtual int32_t Close() = 0; 31 virtual int32_t Close() = 0;
28 }; 32 };
29 33
30 } // namespace thunk 34 } // namespace thunk
31 } // namespace ppapi 35 } // namespace ppapi
32 36
33 #endif // PPAPI_THUNK_PPB_TRANSPORT_API_H_ 37 #endif // PPAPI_THUNK_PPB_TRANSPORT_API_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698