OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "cc/test/test_context_provider.h" | 5 #include "cc/test/test_context_provider.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
11 #include "base/callback_helpers.h" | 11 #include "base/callback_helpers.h" |
12 #include "base/logging.h" | 12 #include "base/logging.h" |
13 #include "cc/test/test_gles2_interface.h" | 13 #include "cc/test/test_gles2_interface.h" |
14 #include "cc/test/test_web_graphics_context_3d.h" | 14 #include "cc/test/test_web_graphics_context_3d.h" |
15 #include "third_party/skia/include/gpu/GrContext.h" | 15 #include "third_party/skia/include/gpu/GrContext.h" |
16 #include "third_party/skia/include/gpu/gl/SkNullGLContext.h" | 16 #include "third_party/skia/include/gpu/gl/SkNullGLContext.h" |
17 | 17 |
18 namespace cc { | 18 namespace cc { |
19 | 19 |
20 // static | 20 // static |
21 scoped_refptr<TestContextProvider> TestContextProvider::Create() { | 21 scoped_refptr<TestContextProvider> TestContextProvider::Create() { |
22 return Create(TestWebGraphicsContext3D::Create()); | 22 return Create(TestWebGraphicsContext3D::Create().Pass()); |
23 } | 23 } |
24 | 24 |
25 // static | 25 // static |
26 scoped_refptr<TestContextProvider> TestContextProvider::CreateWorker() { | |
27 scoped_refptr<TestContextProvider> worker_context_provider = | |
28 Create(TestWebGraphicsContext3D::Create()); | |
29 if (!worker_context_provider) | |
30 return nullptr; | |
31 // Worker contexts are bound to the thread they are created on. | |
32 if (!worker_context_provider->BindToCurrentThread()) | |
33 return nullptr; | |
34 worker_context_provider->SetupLock(); | |
35 return worker_context_provider; | |
36 } | |
37 | |
38 // static | |
39 scoped_refptr<TestContextProvider> TestContextProvider::Create( | 26 scoped_refptr<TestContextProvider> TestContextProvider::Create( |
40 scoped_ptr<TestWebGraphicsContext3D> context) { | 27 scoped_ptr<TestWebGraphicsContext3D> context) { |
41 if (!context) | 28 if (!context) |
42 return NULL; | 29 return NULL; |
43 return new TestContextProvider(context.Pass()); | 30 return new TestContextProvider(context.Pass()); |
44 } | 31 } |
45 | 32 |
46 TestContextProvider::TestContextProvider( | 33 TestContextProvider::TestContextProvider( |
47 scoped_ptr<TestWebGraphicsContext3D> context) | 34 scoped_ptr<TestWebGraphicsContext3D> context) |
48 : context3d_(context.Pass()), | 35 : context3d_(context.Pass()), |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 DCHECK(memory_policy_changed_callback_.is_null() || cb.is_null()); | 192 DCHECK(memory_policy_changed_callback_.is_null() || cb.is_null()); |
206 memory_policy_changed_callback_ = cb; | 193 memory_policy_changed_callback_ = cb; |
207 } | 194 } |
208 | 195 |
209 void TestContextProvider::SetMaxTransferBufferUsageBytes( | 196 void TestContextProvider::SetMaxTransferBufferUsageBytes( |
210 size_t max_transfer_buffer_usage_bytes) { | 197 size_t max_transfer_buffer_usage_bytes) { |
211 context3d_->SetMaxTransferBufferUsageBytes(max_transfer_buffer_usage_bytes); | 198 context3d_->SetMaxTransferBufferUsageBytes(max_transfer_buffer_usage_bytes); |
212 } | 199 } |
213 | 200 |
214 } // namespace cc | 201 } // namespace cc |
OLD | NEW |