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

Unified Diff: webkit/glue/plugins/pepper_buffer.cc

Issue 5828003: Move the Pepper implementation from webkit/glue/plugins/pepper_* to... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/glue/plugins/pepper_buffer.h ('k') | webkit/glue/plugins/pepper_char_set.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/glue/plugins/pepper_buffer.cc
===================================================================
--- webkit/glue/plugins/pepper_buffer.cc (revision 69381)
+++ webkit/glue/plugins/pepper_buffer.cc (working copy)
@@ -1,119 +0,0 @@
-// Copyright (c) 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.
-
-#include "webkit/glue/plugins/pepper_buffer.h"
-
-#include <algorithm>
-
-#include "base/logging.h"
-#include "base/scoped_ptr.h"
-#include "ppapi/c/dev/ppb_buffer_dev.h"
-#include "ppapi/c/pp_instance.h"
-#include "ppapi/c/pp_module.h"
-#include "ppapi/c/pp_resource.h"
-#include "webkit/glue/plugins/pepper_common.h"
-#include "webkit/glue/plugins/pepper_plugin_instance.h"
-#include "webkit/glue/plugins/pepper_plugin_module.h"
-
-namespace pepper {
-
-namespace {
-
-PP_Resource Create(PP_Module module_id, uint32_t size) {
- PluginModule* module = ResourceTracker::Get()->GetModule(module_id);
- if (!module)
- return 0;
-
- scoped_refptr<Buffer> buffer(new Buffer(module));
- if (!buffer->Init(size))
- return 0;
-
- return buffer->GetReference();
-}
-
-PP_Bool IsBuffer(PP_Resource resource) {
- return BoolToPPBool(!!Resource::GetAs<Buffer>(resource));
-}
-
-PP_Bool Describe(PP_Resource resource, uint32_t* size_in_bytes) {
- scoped_refptr<Buffer> buffer(Resource::GetAs<Buffer>(resource));
- if (!buffer)
- return PP_FALSE;
- buffer->Describe(size_in_bytes);
- return PP_TRUE;
-}
-
-void* Map(PP_Resource resource) {
- scoped_refptr<Buffer> buffer(Resource::GetAs<Buffer>(resource));
- if (!buffer)
- return NULL;
- return buffer->Map();
-}
-
-void Unmap(PP_Resource resource) {
- scoped_refptr<Buffer> buffer(Resource::GetAs<Buffer>(resource));
- if (!buffer)
- return;
- return buffer->Unmap();
-}
-
-const PPB_Buffer_Dev ppb_buffer = {
- &Create,
- &IsBuffer,
- &Describe,
- &Map,
- &Unmap,
-};
-
-} // namespace
-
-Buffer::Buffer(PluginModule* module)
- : Resource(module),
- size_(0) {
-}
-
-Buffer::~Buffer() {
-}
-
-// static
-const PPB_Buffer_Dev* Buffer::GetInterface() {
- return &ppb_buffer;
-}
-
-Buffer* Buffer::AsBuffer() { return this; }
-
-bool Buffer::Init(uint32_t size) {
- if (size == 0)
- return false;
- Unmap();
- size_ = size;
- return true;
-}
-
-void Buffer::Describe(uint32_t* size_in_bytes) const {
- *size_in_bytes = size_;
-}
-
-void* Buffer::Map() {
- if (size_ == 0)
- return NULL;
-
- if (!is_mapped()) {
- mem_buffer_.reset(new unsigned char[size_]);
- memset(mem_buffer_.get(), 0, size_);
- }
- return mem_buffer_.get();
-}
-
-void Buffer::Unmap() {
- mem_buffer_.reset();
-}
-
-void Buffer::Swap(Buffer* other) {
- swap(other->mem_buffer_, mem_buffer_);
- std::swap(other->size_, size_);
-}
-
-} // namespace pepper
-
« no previous file with comments | « webkit/glue/plugins/pepper_buffer.h ('k') | webkit/glue/plugins/pepper_char_set.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698