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

Side by Side Diff: gpu_plugin/gpu_processor.h

Issue 332036: move all O3D specific command buffer stuff to command_buffer::o3d... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/o3d/
Patch Set: Created 11 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « core/cross/command_buffer/texture_cb.cc ('k') | gpu_plugin/gpu_processor_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef O3D_GPU_PLUGIN_GPU_PROCESSOR_H_ 5 #ifndef O3D_GPU_PLUGIN_GPU_PROCESSOR_H_
6 #define O3D_GPU_PLUGIN_GPU_PROCESSOR_H_ 6 #define O3D_GPU_PLUGIN_GPU_PROCESSOR_H_
7 7
8 #include "base/ref_counted.h" 8 #include "base/ref_counted.h"
9 #include "base/scoped_ptr.h" 9 #include "base/scoped_ptr.h"
10 #include "base/shared_memory.h" 10 #include "base/shared_memory.h"
(...skipping 13 matching lines...) Expand all
24 24
25 namespace o3d { 25 namespace o3d {
26 namespace gpu_plugin { 26 namespace gpu_plugin {
27 27
28 // This class processes commands in a command buffer. It is event driven and 28 // This class processes commands in a command buffer. It is event driven and
29 // posts tasks to the current message loop to do additional work. 29 // posts tasks to the current message loop to do additional work.
30 class GPUProcessor : public ::base::RefCounted<GPUProcessor>, 30 class GPUProcessor : public ::base::RefCounted<GPUProcessor>,
31 public command_buffer::CommandBufferEngine { 31 public command_buffer::CommandBufferEngine {
32 public: 32 public:
33 #if defined(CB_SERVICE_D3D9) 33 #if defined(CB_SERVICE_D3D9)
34 typedef command_buffer::GAPID3D9 GPUGAPIInterface; 34 typedef command_buffer::o3d::GAPID3D9 GPUGAPIInterface;
35 #elif defined(CB_SERVICE_GL) 35 #elif defined(CB_SERVICE_GL)
36 typedef command_buffer::GAPIGL GPUGAPIInterface; 36 typedef command_buffer::o3d::GAPIGL GPUGAPIInterface;
37 #else 37 #else
38 #error command buffer service not defined 38 #error command buffer service not defined
39 #endif 39 #endif
40 40
41 GPUProcessor(NPP npp, 41 GPUProcessor(NPP npp,
42 CommandBuffer* command_buffer); 42 CommandBuffer* command_buffer);
43 43
44 // This constructor is for unit tests. 44 // This constructor is for unit tests.
45 GPUProcessor(NPP npp, 45 GPUProcessor(NPP npp,
46 CommandBuffer* command_buffer, 46 CommandBuffer* command_buffer,
47 GPUGAPIInterface* gapi, 47 GPUGAPIInterface* gapi,
48 command_buffer::GAPIDecoder* decoder, 48 command_buffer::o3d::GAPIDecoder* decoder,
49 command_buffer::CommandParser* parser, 49 command_buffer::CommandParser* parser,
50 int commands_per_update); 50 int commands_per_update);
51 51
52 virtual bool Initialize(HWND hwnd); 52 virtual bool Initialize(HWND hwnd);
53 53
54 virtual ~GPUProcessor(); 54 virtual ~GPUProcessor();
55 55
56 virtual void Destroy(); 56 virtual void Destroy();
57 57
58 virtual void ProcessCommands(); 58 virtual void ProcessCommands();
(...skipping 22 matching lines...) Expand all
81 81
82 // The GPUProcessor holds a weak reference to the CommandBuffer. The 82 // The GPUProcessor holds a weak reference to the CommandBuffer. The
83 // CommandBuffer owns the GPUProcessor and holds a strong reference to it 83 // CommandBuffer owns the GPUProcessor and holds a strong reference to it
84 // through the ProcessCommands callback. 84 // through the ProcessCommands callback.
85 CommandBuffer* command_buffer_; 85 CommandBuffer* command_buffer_;
86 86
87 scoped_ptr< ::base::SharedMemory> mapped_ring_buffer_; 87 scoped_ptr< ::base::SharedMemory> mapped_ring_buffer_;
88 int commands_per_update_; 88 int commands_per_update_;
89 89
90 scoped_ptr<GPUGAPIInterface> gapi_; 90 scoped_ptr<GPUGAPIInterface> gapi_;
91 scoped_ptr<command_buffer::GAPIDecoder> decoder_; 91 scoped_ptr<command_buffer::o3d::GAPIDecoder> decoder_;
92 scoped_ptr<command_buffer::CommandParser> parser_; 92 scoped_ptr<command_buffer::CommandParser> parser_;
93 }; 93 };
94 94
95 } // namespace gpu_plugin 95 } // namespace gpu_plugin
96 } // namespace o3d 96 } // namespace o3d
97 97
98 // Callbacks to the GPUProcessor hold a reference count. 98 // Callbacks to the GPUProcessor hold a reference count.
99 template <typename Method> 99 template <typename Method>
100 class CallbackStorage<o3d::gpu_plugin::GPUProcessor, Method> { 100 class CallbackStorage<o3d::gpu_plugin::GPUProcessor, Method> {
101 public: 101 public:
(...skipping 10 matching lines...) Expand all
112 112
113 protected: 113 protected:
114 o3d::gpu_plugin::GPUProcessor* obj_; 114 o3d::gpu_plugin::GPUProcessor* obj_;
115 Method meth_; 115 Method meth_;
116 116
117 private: 117 private:
118 DISALLOW_COPY_AND_ASSIGN(CallbackStorage); 118 DISALLOW_COPY_AND_ASSIGN(CallbackStorage);
119 }; 119 };
120 120
121 #endif // O3D_GPU_PLUGIN_GPU_PROCESSOR_H_ 121 #endif // O3D_GPU_PLUGIN_GPU_PROCESSOR_H_
OLDNEW
« no previous file with comments | « core/cross/command_buffer/texture_cb.cc ('k') | gpu_plugin/gpu_processor_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698