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

Side by Side Diff: mojo/gles2/command_buffer_client_impl.cc

Issue 1538823002: Convert Pass()→std::move() in mojo/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 unified diff | Download patch
« no previous file with comments | « mojo/fetcher/update_fetcher.cc ('k') | mojo/gles2/gles2_context.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "mojo/gles2/command_buffer_client_impl.h" 5 #include "mojo/gles2/command_buffer_client_impl.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <utility>
8 9
9 #include "base/logging.h" 10 #include "base/logging.h"
10 #include "base/process/process_handle.h" 11 #include "base/process/process_handle.h"
11 #include "base/threading/thread_restrictions.h" 12 #include "base/threading/thread_restrictions.h"
12 #include "components/mus/gles2/command_buffer_type_conversions.h" 13 #include "components/mus/gles2/command_buffer_type_conversions.h"
13 #include "components/mus/gles2/mojo_buffer_backing.h" 14 #include "components/mus/gles2/mojo_buffer_backing.h"
14 #include "components/mus/gles2/mojo_gpu_memory_buffer.h" 15 #include "components/mus/gles2/mojo_gpu_memory_buffer.h"
15 #include "gpu/command_buffer/common/sync_token.h" 16 #include "gpu/command_buffer/common/sync_token.h"
16 #include "gpu/command_buffer/service/image_factory.h" 17 #include "gpu/command_buffer/service/image_factory.h"
17 #include "mojo/platform_handle/platform_handle_functions.h" 18 #include "mojo/platform_handle/platform_handle_functions.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 observer_binding_(this), 65 observer_binding_(this),
65 command_buffer_id_(0), 66 command_buffer_id_(0),
66 shared_state_(NULL), 67 shared_state_(NULL),
67 last_put_offset_(-1), 68 last_put_offset_(-1),
68 next_transfer_buffer_id_(0), 69 next_transfer_buffer_id_(0),
69 next_image_id_(0), 70 next_image_id_(0),
70 next_fence_sync_release_(1), 71 next_fence_sync_release_(1),
71 flushed_fence_sync_release_(0), 72 flushed_fence_sync_release_(0),
72 async_waiter_(async_waiter) { 73 async_waiter_(async_waiter) {
73 command_buffer_.Bind(mojo::InterfacePtrInfo<mus::mojom::CommandBuffer>( 74 command_buffer_.Bind(mojo::InterfacePtrInfo<mus::mojom::CommandBuffer>(
74 command_buffer_handle.Pass(), 0u), 75 std::move(command_buffer_handle), 0u),
75 async_waiter); 76 async_waiter);
76 command_buffer_.set_connection_error_handler( 77 command_buffer_.set_connection_error_handler(
77 [this]() { DidLoseContext(gpu::error::kUnknown); }); 78 [this]() { DidLoseContext(gpu::error::kUnknown); });
78 } 79 }
79 80
80 CommandBufferClientImpl::~CommandBufferClientImpl() {} 81 CommandBufferClientImpl::~CommandBufferClientImpl() {}
81 82
82 bool CommandBufferClientImpl::Initialize() { 83 bool CommandBufferClientImpl::Initialize() {
83 const size_t kSharedStateSize = sizeof(gpu::CommandBufferSharedState); 84 const size_t kSharedStateSize = sizeof(gpu::CommandBufferSharedState);
84 void* memory = NULL; 85 void* memory = NULL;
85 mojo::ScopedSharedBufferHandle duped; 86 mojo::ScopedSharedBufferHandle duped;
86 bool result = CreateMapAndDupSharedBuffer( 87 bool result = CreateMapAndDupSharedBuffer(
87 kSharedStateSize, &memory, &shared_state_handle_, &duped); 88 kSharedStateSize, &memory, &shared_state_handle_, &duped);
88 if (!result) 89 if (!result)
89 return false; 90 return false;
90 91
91 shared_state_ = static_cast<gpu::CommandBufferSharedState*>(memory); 92 shared_state_ = static_cast<gpu::CommandBufferSharedState*>(memory);
92 93
93 shared_state()->Initialize(); 94 shared_state()->Initialize();
94 95
95 mus::mojom::CommandBufferLostContextObserverPtr observer_ptr; 96 mus::mojom::CommandBufferLostContextObserverPtr observer_ptr;
96 observer_binding_.Bind(GetProxy(&observer_ptr), async_waiter_); 97 observer_binding_.Bind(GetProxy(&observer_ptr), async_waiter_);
97 mus::mojom::CommandBufferInfoPtr info; 98 mus::mojom::CommandBufferInfoPtr info;
98 command_buffer_->Initialize( 99 command_buffer_->Initialize(
99 observer_ptr.Pass(), duped.Pass(), mojo::Array<int32_t>::From(attribs_), 100 std::move(observer_ptr), std::move(duped),
101 mojo::Array<int32_t>::From(attribs_),
100 base::Bind(&Copy<mus::mojom::CommandBufferInfoPtr>, &info)); 102 base::Bind(&Copy<mus::mojom::CommandBufferInfoPtr>, &info));
101 103
102 base::ThreadRestrictions::ScopedAllowWait wait; 104 base::ThreadRestrictions::ScopedAllowWait wait;
103 if (!command_buffer_.WaitForIncomingResponse()) { 105 if (!command_buffer_.WaitForIncomingResponse()) {
104 VLOG(1) << "Channel encountered error while creating command buffer."; 106 VLOG(1) << "Channel encountered error while creating command buffer.";
105 return false; 107 return false;
106 } 108 }
107 109
108 if (!info) { 110 if (!info) {
109 VLOG(1) << "Command buffer cannot be initialized successfully."; 111 VLOG(1) << "Command buffer cannot be initialized successfully.";
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 mojo::ScopedSharedBufferHandle handle; 174 mojo::ScopedSharedBufferHandle handle;
173 mojo::ScopedSharedBufferHandle duped; 175 mojo::ScopedSharedBufferHandle duped;
174 if (!CreateMapAndDupSharedBuffer(size, &memory, &handle, &duped)) { 176 if (!CreateMapAndDupSharedBuffer(size, &memory, &handle, &duped)) {
175 if (last_state_.error == gpu::error::kNoError) 177 if (last_state_.error == gpu::error::kNoError)
176 last_state_.error = gpu::error::kLostContext; 178 last_state_.error = gpu::error::kLostContext;
177 return NULL; 179 return NULL;
178 } 180 }
179 181
180 *id = ++next_transfer_buffer_id_; 182 *id = ++next_transfer_buffer_id_;
181 183
182 command_buffer_->RegisterTransferBuffer( 184 command_buffer_->RegisterTransferBuffer(*id, std::move(duped),
183 *id, duped.Pass(), static_cast<uint32_t>(size)); 185 static_cast<uint32_t>(size));
184 186
185 scoped_ptr<gpu::BufferBacking> backing( 187 scoped_ptr<gpu::BufferBacking> backing(
186 new mus::MojoBufferBacking(handle.Pass(), memory, size)); 188 new mus::MojoBufferBacking(std::move(handle), memory, size));
187 scoped_refptr<gpu::Buffer> buffer(new gpu::Buffer(backing.Pass())); 189 scoped_refptr<gpu::Buffer> buffer(new gpu::Buffer(std::move(backing)));
188 return buffer; 190 return buffer;
189 } 191 }
190 192
191 void CommandBufferClientImpl::DestroyTransferBuffer(int32 id) { 193 void CommandBufferClientImpl::DestroyTransferBuffer(int32 id) {
192 command_buffer_->DestroyTransferBuffer(id); 194 command_buffer_->DestroyTransferBuffer(id);
193 } 195 }
194 196
195 gpu::Capabilities CommandBufferClientImpl::GetCapabilities() { 197 gpu::Capabilities CommandBufferClientImpl::GetCapabilities() {
196 return capabilities_; 198 return capabilities_;
197 } 199 }
(...skipping 30 matching lines...) Expand all
228 MojoHandle mojo_handle = MOJO_HANDLE_INVALID; 230 MojoHandle mojo_handle = MOJO_HANDLE_INVALID;
229 MojoResult create_result = MojoCreatePlatformHandleWrapper( 231 MojoResult create_result = MojoCreatePlatformHandleWrapper(
230 platform_handle, &mojo_handle); 232 platform_handle, &mojo_handle);
231 if (create_result != MOJO_RESULT_OK) { 233 if (create_result != MOJO_RESULT_OK) {
232 NOTIMPLEMENTED(); 234 NOTIMPLEMENTED();
233 return -1; 235 return -1;
234 } 236 }
235 mojo::ScopedHandle scoped_handle; 237 mojo::ScopedHandle scoped_handle;
236 scoped_handle.reset(mojo::Handle(mojo_handle)); 238 scoped_handle.reset(mojo::Handle(mojo_handle));
237 command_buffer_->CreateImage( 239 command_buffer_->CreateImage(
238 new_id, scoped_handle.Pass(), handle.type, size.Pass(), 240 new_id, std::move(scoped_handle), handle.type, std::move(size),
239 static_cast<int32_t>(gpu_memory_buffer->GetFormat()), internalformat); 241 static_cast<int32_t>(gpu_memory_buffer->GetFormat()), internalformat);
240 if (requires_sync_point) { 242 if (requires_sync_point) {
241 NOTIMPLEMENTED(); 243 NOTIMPLEMENTED();
242 // TODO(jam): need to support this if we support types other than 244 // TODO(jam): need to support this if we support types other than
243 // SHARED_MEMORY_BUFFER. 245 // SHARED_MEMORY_BUFFER.
244 //gpu_memory_buffer_manager->SetDestructionSyncPoint(gpu_memory_buffer, 246 //gpu_memory_buffer_manager->SetDestructionSyncPoint(gpu_memory_buffer,
245 // InsertSyncPoint()); 247 // InsertSyncPoint());
246 } 248 }
247 249
248 return new_id; 250 return new_id;
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 388
387 // It is also safe to wait on the same context. 389 // It is also safe to wait on the same context.
388 if (sync_token->namespace_id() == gpu::CommandBufferNamespace::MOJO && 390 if (sync_token->namespace_id() == gpu::CommandBufferNamespace::MOJO &&
389 sync_token->command_buffer_id() == GetCommandBufferID()) 391 sync_token->command_buffer_id() == GetCommandBufferID())
390 return true; 392 return true;
391 393
392 return false; 394 return false;
393 } 395 }
394 396
395 } // namespace gles2 397 } // namespace gles2
OLDNEW
« no previous file with comments | « mojo/fetcher/update_fetcher.cc ('k') | mojo/gles2/gles2_context.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698