Index: gpu/gpu_plugin/gpu_plugin_object.h |
=================================================================== |
--- gpu/gpu_plugin/gpu_plugin_object.h (revision 34314) |
+++ gpu/gpu_plugin/gpu_plugin_object.h (working copy) |
@@ -1,133 +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. |
- |
-#ifndef GPU_GPU_PLUGIN_GPU_PLUGIN_OBJECT_H_ |
-#define GPU_GPU_PLUGIN_GPU_PLUGIN_OBJECT_H_ |
- |
-#include <string> |
- |
-#include "base/ref_counted.h" |
-#include "base/thread.h" |
-#include "gpu/command_buffer/common/command_buffer.h" |
-#include "gpu/command_buffer/service/gpu_processor.h" |
-#include "gpu/np_utils/default_np_object.h" |
-#include "gpu/np_utils/np_dispatcher.h" |
-#include "gpu/np_utils/np_headers.h" |
-#include "gpu/np_utils/np_plugin_object.h" |
-#include "gpu/np_utils/np_utils.h" |
- |
-namespace gpu_plugin { |
- |
-// The scriptable object for the GPU plugin. |
-class GPUPluginObject : public np_utils::DefaultNPObject<NPObject>, |
- public np_utils::PluginObject { |
- public: |
- static const int32 kCommandBufferSize = 1024 * 1024; |
- |
- enum Status { |
- // In the state of waiting for the named function to be called to continue |
- // the initialization sequence. |
- kWaitingForNew, |
- kWaitingForSetWindow, |
- kWaitingForOpenCommandBuffer, |
- |
- // Initialization either succeeded or failed. |
- kInitializationSuccessful, |
- kInitializationFailed, |
- |
- // Destroy has now been called and the plugin object cannot be used. |
- kDestroyed, |
- }; |
- |
- static const NPUTF8 kPluginType[]; |
- |
- explicit GPUPluginObject(NPP npp); |
- |
- virtual NPError New(NPMIMEType plugin_type, |
- int16 argc, |
- char* argn[], |
- char* argv[], |
- NPSavedData* saved); |
- |
- virtual NPError SetWindow(NPWindow* new_window); |
- const NPWindow& GetWindow() { return window_; } |
- |
- virtual int16 HandleEvent(NPEvent* event); |
- |
- virtual NPError Destroy(NPSavedData** saved); |
- |
- virtual void Release(); |
- |
- virtual NPObject* GetScriptableNPObject(); |
- |
- // Returns the current initialization status. See Status enum. |
- int32 GetStatus() { |
- return status_; |
- } |
- |
- // Get the width of the plugin window. |
- int32 GetWidth() { |
- return window_.width; |
- } |
- |
- // Get the height of the plugin window. |
- int32 GetHeight() { |
- return window_.height; |
- } |
- |
- // Set the object that receives notifications of GPU plugin object events |
- // such as resize and keyboard and mouse input. |
- void SetEventSync(np_utils::NPObjectPointer<NPObject> event_sync) { |
- event_sync_ = event_sync; |
- } |
- |
- np_utils::NPObjectPointer<NPObject> GetEventSync() { |
- return event_sync_; |
- } |
- |
- // Initializes and returns the command buffer object. Returns NULL if the |
- // command buffer cannot be initialized, for example if the plugin does not |
- // yet have a window handle. |
- command_buffer::CommandBuffer* OpenCommandBuffer(); |
- |
- // Set the status for testing. |
- void set_status(Status status) { |
- status_ = status; |
- } |
- |
- // Replace the default command buffer for testing. Takes ownership. |
- void set_command_buffer(command_buffer::CommandBuffer* |
- command_buffer) { |
- command_buffer_.reset(command_buffer); |
- } |
- |
- // Replace the default GPU processor for testing. |
- void set_gpu_processor( |
- const scoped_refptr<command_buffer::GPUProcessor>& processor) { |
- processor_ = processor; |
- } |
- |
- NP_UTILS_BEGIN_DISPATCHER_CHAIN(GPUPluginObject, DefaultNPObject<NPObject>) |
- NP_UTILS_DISPATCHER(GetStatus, int32()) |
- NP_UTILS_DISPATCHER(GetWidth, int32()) |
- NP_UTILS_DISPATCHER(GetHeight, int32()) |
- NP_UTILS_DISPATCHER(SetEventSync, |
- void(np_utils::NPObjectPointer<NPObject> sync)) |
- NP_UTILS_DISPATCHER(GetEventSync, np_utils::NPObjectPointer<NPObject>()) |
- NP_UTILS_END_DISPATCHER_CHAIN |
- |
- private: |
- NPError PlatformSpecificSetWindow(NPWindow* new_window); |
- |
- NPP npp_; |
- Status status_; |
- NPWindow window_; |
- scoped_ptr<command_buffer::CommandBuffer> command_buffer_; |
- scoped_refptr<command_buffer::GPUProcessor> processor_; |
- np_utils::NPObjectPointer<NPObject> event_sync_; |
-}; |
- |
-} // namespace gpu_plugin |
- |
-#endif // GPU_GPU_PLUGIN_GPU_PLUGIN_OBJECT_H_ |