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

Unified Diff: gpu/gpu_plugin/gpu_plugin_object.cc

Issue 465040: Added CommandBufferClient, CommandBufferStub and some IPC messages.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 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 | « gpu/gpu_plugin/gpu_plugin_object.h ('k') | gpu/gpu_plugin/gpu_plugin_object_factory.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/gpu_plugin/gpu_plugin_object.cc
===================================================================
--- gpu/gpu_plugin/gpu_plugin_object.cc (revision 34314)
+++ gpu/gpu_plugin/gpu_plugin_object.cc (working copy)
@@ -1,123 +0,0 @@
-// Copyright (c) 2006-2008 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 "base/logging.h"
-#include "gpu/command_buffer/service/command_buffer_service.h"
-#include "gpu/command_buffer/service/gpu_processor.h"
-#include "gpu/np_utils/np_utils.h"
-#include "gpu/gpu_plugin/gpu_plugin_object.h"
-
-using ::base::SharedMemory;
-using command_buffer::CommandBuffer;
-using command_buffer::CommandBufferService;
-using command_buffer::GPUProcessor;
-using np_utils::NPBrowser;
-using np_utils::NPObjectPointer;
-
-namespace gpu_plugin {
-
-const NPUTF8 GPUPluginObject::kPluginType[] =
- "application/vnd.google.chrome.gpu-plugin";
-
-GPUPluginObject::GPUPluginObject(NPP npp)
- : npp_(npp),
- status_(kWaitingForNew),
- command_buffer_(new CommandBufferService),
- processor_(new GPUProcessor(command_buffer_.get())) {
- memset(&window_, 0, sizeof(window_));
-}
-
-NPError GPUPluginObject::New(NPMIMEType plugin_type,
- int16 argc,
- char* argn[],
- char* argv[],
- NPSavedData* saved) {
- if (status_ != kWaitingForNew)
- return NPERR_GENERIC_ERROR;
-
- status_ = kWaitingForSetWindow;
-
- return NPERR_NO_ERROR;
-}
-
-NPError GPUPluginObject::SetWindow(NPWindow* new_window) {
- if (status_ == kWaitingForNew || status_ == kDestroyed)
- return NPERR_GENERIC_ERROR;
-
- // PlatformSpecificSetWindow advances the status depending on what happens.
- NPError error = PlatformSpecificSetWindow(new_window);
- if (error == NPERR_NO_ERROR) {
- window_ = *new_window;
-
- if (event_sync_.Get()) {
- NPInvokeVoid(npp_,
- event_sync_,
- "resize",
- static_cast<int32>(window_.width),
- static_cast<int32>(window_.height));
- }
- } else {
- memset(&window_, 0, sizeof(window_));
- }
-
- return error;
-}
-
-int16 GPUPluginObject::HandleEvent(NPEvent* event) {
- return 0;
-}
-
-NPError GPUPluginObject::Destroy(NPSavedData** saved) {
- if (status_ == kWaitingForNew || status_ == kDestroyed)
- return NPERR_GENERIC_ERROR;
-
- if (command_buffer_.get()) {
- command_buffer_->SetPutOffsetChangeCallback(NULL);
- }
-
- status_ = kDestroyed;
-
- return NPERR_NO_ERROR;
-}
-
-void GPUPluginObject::Release() {
- DCHECK(status_ == kWaitingForNew || status_ == kDestroyed);
- NPBrowser::get()->ReleaseObject(this);
-}
-
-NPObject*GPUPluginObject::GetScriptableNPObject() {
- NPBrowser::get()->RetainObject(this);
- return this;
-}
-
-CommandBuffer* GPUPluginObject::OpenCommandBuffer() {
- if (status_ == kInitializationSuccessful)
- return command_buffer_.get();
-
- // SetWindow must have been called before OpenCommandBuffer.
- // PlatformSpecificSetWindow advances the status to
- // kWaitingForOpenCommandBuffer.
- if (status_ != kWaitingForOpenCommandBuffer)
- return NULL;
-
- scoped_ptr<SharedMemory> ring_buffer(new SharedMemory);
- if (!ring_buffer->Create(std::wstring(), false, false, kCommandBufferSize))
- return NULL;
-
- if (command_buffer_->Initialize(ring_buffer.release())) {
- if (processor_->Initialize(static_cast<HWND>(window_.window))) {
- command_buffer_->SetPutOffsetChangeCallback(
- NewCallback(processor_.get(),
- &GPUProcessor::ProcessCommands));
- status_ = kInitializationSuccessful;
- return command_buffer_.get();
- }
- }
-
- return NULL;
-}
-
-} // namespace gpu_plugin
« no previous file with comments | « gpu/gpu_plugin/gpu_plugin_object.h ('k') | gpu/gpu_plugin/gpu_plugin_object_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698