summaryrefslogtreecommitdiffstats
path: root/ppapi/cpp/completion_callback.h
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-26 22:21:59 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-26 22:21:59 +0000
commit11f515acdda3473200ff0cc4106a0020a7d4dc74 (patch)
treecdfd9713928d6f0fa73b5cd7bedbd965fc93e329 /ppapi/cpp/completion_callback.h
parentf60d96e82acd547ac834b93cd68865b66ab5b4da (diff)
downloadchromium_src-11f515acdda3473200ff0cc4106a0020a7d4dc74.zip
chromium_src-11f515acdda3473200ff0cc4106a0020a7d4dc74.tar.gz
chromium_src-11f515acdda3473200ff0cc4106a0020a7d4dc74.tar.bz2
New file chooser interface that uses the new PP_ArrayOutput feature. This also changes PP_ArrayOutput to be pass-by-value.
This keeps backwards compat for the old interface. It fixes some bugs in the callback system that I found when working on the patch and adds some new machinery for doing array output in the proxy. It also re-enables the file chooser feature which was recently broken. BUG=118857 Review URL: https://chromiumcodereview.appspot.com/9728001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129022 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/cpp/completion_callback.h')
-rw-r--r--ppapi/cpp/completion_callback.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/ppapi/cpp/completion_callback.h b/ppapi/cpp/completion_callback.h
index f1a20b3..3d142e8 100644
--- a/ppapi/cpp/completion_callback.h
+++ b/ppapi/cpp/completion_callback.h
@@ -185,6 +185,8 @@ class CompletionCallbackWithOutput : public CompletionCallback {
/// specializations for all of these cases.
typedef typename internal::CallbackOutputTraits<T>::StorageType
OutputStorageType;
+ typedef typename internal::CallbackOutputTraits<T>::APIArgType
+ APIArgType;
/// The default constructor will create a blocking
/// <code>CompletionCallback</code> that references the given output
@@ -237,7 +239,9 @@ class CompletionCallbackWithOutput : public CompletionCallback {
output_(output) {
}
- OutputStorageType* output() const { return output_; }
+ APIArgType output() const {
+ return internal::CallbackOutputTraits<T>::StorageToAPIArg(*output_);
+ }
private:
OutputStorageType* output_;