summaryrefslogtreecommitdiffstats
path: root/third_party/npapi
diff options
context:
space:
mode:
authorsehr@google.com <sehr@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-03 16:51:38 +0000
committersehr@google.com <sehr@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-03 16:51:38 +0000
commit5f6745ebf3f595e6cddaf70b76d78699e40b0a44 (patch)
tree32addee40780977d039c520fb12087dccf1ef8fc /third_party/npapi
parent194b41be7fdce80b33da38a844fb70a7b5eadb78 (diff)
downloadchromium_src-5f6745ebf3f595e6cddaf70b76d78699e40b0a44.zip
chromium_src-5f6745ebf3f595e6cddaf70b76d78699e40b0a44.tar.gz
chromium_src-5f6745ebf3f595e6cddaf70b76d78699e40b0a44.tar.bz2
To implement Pepper in Native Client we need access to the implementation of the
Pepper APIs in Chrome. Specifically, we need to be able to get the base::SharedMemory or TransportDIB memory regions used to communicate with devices. To enable doing this, especially in 64-bit Chrome, I needed to change the GetStateContext and SetStateContext functions to manipulate 64-bit values. This CL does not include the Native Client hookup to the new APIs, but is needed to do so. BUG=none TEST=none Review URL: http://codereview.chromium.org/569004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37975 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/npapi')
-rw-r--r--third_party/npapi/bindings/npapi_extensions.h4
-rw-r--r--third_party/npapi/bindings/npapi_extensions_private.h18
2 files changed, 20 insertions, 2 deletions
diff --git a/third_party/npapi/bindings/npapi_extensions.h b/third_party/npapi/bindings/npapi_extensions.h
index f4530ef..1b775ba 100644
--- a/third_party/npapi/bindings/npapi_extensions.h
+++ b/third_party/npapi/bindings/npapi_extensions.h
@@ -54,13 +54,13 @@ typedef NPError (*NPDeviceGetStateContextPtr) (
NPP instance,
NPDeviceContext* context,
int32 state,
- int32 *value);
+ intptr_t* value);
/* poke device state */
typedef NPError (*NPDeviceSetStateContextPtr) (
NPP instance,
NPDeviceContext* context,
int32 state,
- int32 value);
+ intptr_t value);
/* flush context, if callback, userData are NULL */
/* this becomes a blocking call */
typedef NPError (*NPDeviceFlushContextPtr)(
diff --git a/third_party/npapi/bindings/npapi_extensions_private.h b/third_party/npapi/bindings/npapi_extensions_private.h
new file mode 100644
index 0000000..ea84024
--- /dev/null
+++ b/third_party/npapi/bindings/npapi_extensions_private.h
@@ -0,0 +1,18 @@
+/* Copyright (c) 2006-2010 The Chromium Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#ifndef _NP_EXTENSIONS_PRIVATE_H_
+#define _NP_EXTENSIONS_PRIVATE_H_
+
+#include "third_party/npapi/bindings/npapi.h"
+
+// Some reserved GetStateContext/SetStateContext selectors.
+typedef enum {
+ NPExtensionsReservedStateSharedMemory = 66536
+ // Used by the Device2D and Audio devices to return a pointer to the
+ // structure used to implement the shared memory buffer for the device.
+} NPExtensionsReservedStates;
+
+#endif /* _NP_EXTENSIONS_PRIVATE_H_ */