OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "gpu/demos/framework/window.h" | 5 #include "gpu/demos/framework/window.h" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "gpu/command_buffer/client/gles2_implementation.h" | 8 #include "gpu/command_buffer/client/gles2_implementation.h" |
9 #include "gpu/command_buffer/client/gles2_lib.h" | 9 #include "gpu/command_buffer/client/gles2_lib.h" |
10 #include "gpu/command_buffer/service/command_buffer_service.h" | 10 #include "gpu/command_buffer/service/command_buffer_service.h" |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
62 GpuScheduler* gpu_scheduler( | 62 GpuScheduler* gpu_scheduler( |
63 new GpuScheduler(command_buffer.get(), NULL)); | 63 new GpuScheduler(command_buffer.get(), NULL)); |
64 if (!gpu_scheduler->Initialize(hwnd, gfx::Size(), | 64 if (!gpu_scheduler->Initialize(hwnd, gfx::Size(), |
65 gpu::gles2::DisallowedExtensions(), | 65 gpu::gles2::DisallowedExtensions(), |
66 NULL, std::vector<int32>(), | 66 NULL, std::vector<int32>(), |
67 NULL, 0)) { | 67 NULL, 0)) { |
68 return false; | 68 return false; |
69 } | 69 } |
70 | 70 |
71 command_buffer->SetPutOffsetChangeCallback( | 71 command_buffer->SetPutOffsetChangeCallback( |
72 NewCallback(gpu_scheduler, &GpuScheduler::ProcessCommands)); | 72 NewCallback(gpu_scheduler, &GpuScheduler::PutChanged)); |
73 | 73 |
74 GLES2CmdHelper* helper = new GLES2CmdHelper(command_buffer.get()); | 74 GLES2CmdHelper* helper = new GLES2CmdHelper(command_buffer.get()); |
75 if (!helper->Initialize(kCommandBufferSize)) { | 75 if (!helper->Initialize(kCommandBufferSize)) { |
76 // TODO(alokp): cleanup. | 76 // TODO(alokp): cleanup. |
77 return false; | 77 return false; |
78 } | 78 } |
79 | 79 |
80 int32 transfer_buffer_id = | 80 int32 transfer_buffer_id = |
81 command_buffer->CreateTransferBuffer(kTransferBufferSize, -1); | 81 command_buffer->CreateTransferBuffer(kTransferBufferSize, -1); |
82 Buffer transfer_buffer = | 82 Buffer transfer_buffer = |
83 command_buffer->GetTransferBuffer(transfer_buffer_id); | 83 command_buffer->GetTransferBuffer(transfer_buffer_id); |
84 if (transfer_buffer.ptr == NULL) return false; | 84 if (transfer_buffer.ptr == NULL) return false; |
85 | 85 |
86 ::gles2::Initialize(); | 86 ::gles2::Initialize(); |
87 ::gles2::SetGLContext(new GLES2Implementation(helper, | 87 ::gles2::SetGLContext(new GLES2Implementation(helper, |
88 transfer_buffer.size, | 88 transfer_buffer.size, |
89 transfer_buffer.ptr, | 89 transfer_buffer.ptr, |
90 transfer_buffer_id, | 90 transfer_buffer_id, |
91 false)); | 91 false)); |
92 return command_buffer.release() != NULL; | 92 return command_buffer.release() != NULL; |
93 } | 93 } |
94 | 94 |
95 } // namespace demos | 95 } // namespace demos |
96 } // namespace gpu | 96 } // namespace gpu |
OLD | NEW |