summaryrefslogtreecommitdiffstats
path: root/ppapi/shared_impl/ppb_memory_shared.cc
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-07 18:59:27 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-07 18:59:27 +0000
commit9a57839249d238f6ecf75f6ff91e80795b144fad (patch)
tree7e5c24f82967b80ebe5580a6a87dd8a6d24a861c /ppapi/shared_impl/ppb_memory_shared.cc
parent14d5ea0999bc034e0e847170b0a1edfe444d24eb (diff)
downloadchromium_src-9a57839249d238f6ecf75f6ff91e80795b144fad.zip
chromium_src-9a57839249d238f6ecf75f6ff91e80795b144fad.tar.gz
chromium_src-9a57839249d238f6ecf75f6ff91e80795b144fad.tar.bz2
Rename the shared_impl resource files to give them more regular names.
[ Reland of 113290 http://codereview.chromium.org/8790004 ] I keep getting confused between things like AudioImpl and PPB_Audio_Impl. This uses _shared for the names, so now we have _impl, _proxy, and _shared which makes more sense. I also removed the ppb_opengles2_impl file since it was just a forward to the shared version. Review URL: http://codereview.chromium.org/8849003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113428 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/shared_impl/ppb_memory_shared.cc')
-rw-r--r--ppapi/shared_impl/ppb_memory_shared.cc43
1 files changed, 43 insertions, 0 deletions
diff --git a/ppapi/shared_impl/ppb_memory_shared.cc b/ppapi/shared_impl/ppb_memory_shared.cc
new file mode 100644
index 0000000..2cf8aa7
--- /dev/null
+++ b/ppapi/shared_impl/ppb_memory_shared.cc
@@ -0,0 +1,43 @@
+// Copyright (c) 2011 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.
+
+#include <stdlib.h>
+
+#include "ppapi/c/dev/ppb_memory_dev.h"
+#include "ppapi/shared_impl/ppapi_shared_export.h"
+
+// The memory interface doesn't have a normal C -> C++ thunk since it doesn't
+// actually have any proxy wrapping or associated objects; it's just a call
+// into base. So we implement the entire interface here, using the thunk
+// namespace so it magically gets hooked up in the proper places.
+
+namespace ppapi {
+
+namespace {
+
+void* MemAlloc(uint32_t num_bytes) {
+ return malloc(num_bytes);
+}
+
+void MemFree(void* ptr) {
+ free(ptr);
+}
+
+const PPB_Memory_Dev ppb_memory = {
+ &MemAlloc,
+ &MemFree
+};
+
+} // namespace
+
+namespace thunk {
+
+// static
+PPAPI_SHARED_EXPORT const PPB_Memory_Dev* GetPPB_Memory_Dev_Thunk() {
+ return &ppb_memory;
+}
+
+} // namespace thunk
+
+} // namespace ppapi