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

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

Issue 1543603002: Switch to standard integer types in mojo/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix 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/gles2/command_buffer_client_impl.h ('k') | mojo/gles2/gles2_context.h » ('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 <stddef.h>
8 #include <stdint.h>
9
7 #include <limits> 10 #include <limits>
8 #include <utility> 11 #include <utility>
9 12
10 #include "base/logging.h" 13 #include "base/logging.h"
11 #include "base/process/process_handle.h" 14 #include "base/process/process_handle.h"
12 #include "base/threading/thread_restrictions.h" 15 #include "base/threading/thread_restrictions.h"
13 #include "components/mus/gles2/command_buffer_type_conversions.h" 16 #include "components/mus/gles2/command_buffer_type_conversions.h"
14 #include "components/mus/gles2/mojo_buffer_backing.h" 17 #include "components/mus/gles2/mojo_buffer_backing.h"
15 #include "components/mus/gles2/mojo_gpu_memory_buffer.h" 18 #include "components/mus/gles2/mojo_gpu_memory_buffer.h"
16 #include "gpu/command_buffer/common/sync_token.h" 19 #include "gpu/command_buffer/common/sync_token.h"
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 DCHECK_EQ(gpu::CommandBufferNamespace::MOJO, info->command_buffer_namespace); 118 DCHECK_EQ(gpu::CommandBufferNamespace::MOJO, info->command_buffer_namespace);
116 command_buffer_id_ = info->command_buffer_id; 119 command_buffer_id_ = info->command_buffer_id;
117 capabilities_ = info->capabilities.To<gpu::Capabilities>(); 120 capabilities_ = info->capabilities.To<gpu::Capabilities>();
118 return true; 121 return true;
119 } 122 }
120 123
121 gpu::CommandBuffer::State CommandBufferClientImpl::GetLastState() { 124 gpu::CommandBuffer::State CommandBufferClientImpl::GetLastState() {
122 return last_state_; 125 return last_state_;
123 } 126 }
124 127
125 int32 CommandBufferClientImpl::GetLastToken() { 128 int32_t CommandBufferClientImpl::GetLastToken() {
126 TryUpdateState(); 129 TryUpdateState();
127 return last_state_.token; 130 return last_state_.token;
128 } 131 }
129 132
130 void CommandBufferClientImpl::Flush(int32 put_offset) { 133 void CommandBufferClientImpl::Flush(int32_t put_offset) {
131 if (last_put_offset_ == put_offset) 134 if (last_put_offset_ == put_offset)
132 return; 135 return;
133 136
134 last_put_offset_ = put_offset; 137 last_put_offset_ = put_offset;
135 command_buffer_->Flush(put_offset); 138 command_buffer_->Flush(put_offset);
136 flushed_fence_sync_release_ = next_fence_sync_release_ - 1; 139 flushed_fence_sync_release_ = next_fence_sync_release_ - 1;
137 } 140 }
138 141
139 void CommandBufferClientImpl::OrderingBarrier(int32_t put_offset) { 142 void CommandBufferClientImpl::OrderingBarrier(int32_t put_offset) {
140 // TODO(jamesr): Implement this more efficiently. 143 // TODO(jamesr): Implement this more efficiently.
141 Flush(put_offset); 144 Flush(put_offset);
142 } 145 }
143 146
144 void CommandBufferClientImpl::WaitForTokenInRange(int32 start, int32 end) { 147 void CommandBufferClientImpl::WaitForTokenInRange(int32_t start, int32_t end) {
145 TryUpdateState(); 148 TryUpdateState();
146 while (!InRange(start, end, last_state_.token) && 149 while (!InRange(start, end, last_state_.token) &&
147 last_state_.error == gpu::error::kNoError) { 150 last_state_.error == gpu::error::kNoError) {
148 MakeProgressAndUpdateState(); 151 MakeProgressAndUpdateState();
149 TryUpdateState(); 152 TryUpdateState();
150 } 153 }
151 } 154 }
152 155
153 void CommandBufferClientImpl::WaitForGetOffsetInRange(int32 start, int32 end) { 156 void CommandBufferClientImpl::WaitForGetOffsetInRange(int32_t start,
157 int32_t end) {
154 TryUpdateState(); 158 TryUpdateState();
155 while (!InRange(start, end, last_state_.get_offset) && 159 while (!InRange(start, end, last_state_.get_offset) &&
156 last_state_.error == gpu::error::kNoError) { 160 last_state_.error == gpu::error::kNoError) {
157 MakeProgressAndUpdateState(); 161 MakeProgressAndUpdateState();
158 TryUpdateState(); 162 TryUpdateState();
159 } 163 }
160 } 164 }
161 165
162 void CommandBufferClientImpl::SetGetBuffer(int32 shm_id) { 166 void CommandBufferClientImpl::SetGetBuffer(int32_t shm_id) {
163 command_buffer_->SetGetBuffer(shm_id); 167 command_buffer_->SetGetBuffer(shm_id);
164 last_put_offset_ = -1; 168 last_put_offset_ = -1;
165 } 169 }
166 170
167 scoped_refptr<gpu::Buffer> CommandBufferClientImpl::CreateTransferBuffer( 171 scoped_refptr<gpu::Buffer> CommandBufferClientImpl::CreateTransferBuffer(
168 size_t size, 172 size_t size,
169 int32* id) { 173 int32_t* id) {
170 if (size >= std::numeric_limits<uint32_t>::max()) 174 if (size >= std::numeric_limits<uint32_t>::max())
171 return NULL; 175 return NULL;
172 176
173 void* memory = NULL; 177 void* memory = NULL;
174 mojo::ScopedSharedBufferHandle handle; 178 mojo::ScopedSharedBufferHandle handle;
175 mojo::ScopedSharedBufferHandle duped; 179 mojo::ScopedSharedBufferHandle duped;
176 if (!CreateMapAndDupSharedBuffer(size, &memory, &handle, &duped)) { 180 if (!CreateMapAndDupSharedBuffer(size, &memory, &handle, &duped)) {
177 if (last_state_.error == gpu::error::kNoError) 181 if (last_state_.error == gpu::error::kNoError)
178 last_state_.error = gpu::error::kLostContext; 182 last_state_.error = gpu::error::kLostContext;
179 return NULL; 183 return NULL;
180 } 184 }
181 185
182 *id = ++next_transfer_buffer_id_; 186 *id = ++next_transfer_buffer_id_;
183 187
184 command_buffer_->RegisterTransferBuffer(*id, std::move(duped), 188 command_buffer_->RegisterTransferBuffer(*id, std::move(duped),
185 static_cast<uint32_t>(size)); 189 static_cast<uint32_t>(size));
186 190
187 scoped_ptr<gpu::BufferBacking> backing( 191 scoped_ptr<gpu::BufferBacking> backing(
188 new mus::MojoBufferBacking(std::move(handle), memory, size)); 192 new mus::MojoBufferBacking(std::move(handle), memory, size));
189 scoped_refptr<gpu::Buffer> buffer(new gpu::Buffer(std::move(backing))); 193 scoped_refptr<gpu::Buffer> buffer(new gpu::Buffer(std::move(backing)));
190 return buffer; 194 return buffer;
191 } 195 }
192 196
193 void CommandBufferClientImpl::DestroyTransferBuffer(int32 id) { 197 void CommandBufferClientImpl::DestroyTransferBuffer(int32_t id) {
194 command_buffer_->DestroyTransferBuffer(id); 198 command_buffer_->DestroyTransferBuffer(id);
195 } 199 }
196 200
197 gpu::Capabilities CommandBufferClientImpl::GetCapabilities() { 201 gpu::Capabilities CommandBufferClientImpl::GetCapabilities() {
198 return capabilities_; 202 return capabilities_;
199 } 203 }
200 204
201 int32_t CommandBufferClientImpl::CreateImage(ClientBuffer buffer, 205 int32_t CommandBufferClientImpl::CreateImage(ClientBuffer buffer,
202 size_t width, 206 size_t width,
203 size_t height, 207 size_t height,
204 unsigned internalformat) { 208 unsigned internalformat) {
205 int32 new_id = ++next_image_id_; 209 int32_t new_id = ++next_image_id_;
206 210
207 mojo::SizePtr size = mojo::Size::New(); 211 mojo::SizePtr size = mojo::Size::New();
208 size->width = static_cast<int32_t>(width); 212 size->width = static_cast<int32_t>(width);
209 size->height = static_cast<int32_t>(height); 213 size->height = static_cast<int32_t>(height);
210 214
211 mus::MojoGpuMemoryBufferImpl* gpu_memory_buffer = 215 mus::MojoGpuMemoryBufferImpl* gpu_memory_buffer =
212 mus::MojoGpuMemoryBufferImpl::FromClientBuffer(buffer); 216 mus::MojoGpuMemoryBufferImpl::FromClientBuffer(buffer);
213 gfx::GpuMemoryBufferHandle handle = gpu_memory_buffer->GetHandle(); 217 gfx::GpuMemoryBufferHandle handle = gpu_memory_buffer->GetHandle();
214 218
215 bool requires_sync_point = false; 219 bool requires_sync_point = false;
(...skipping 27 matching lines...) Expand all
243 NOTIMPLEMENTED(); 247 NOTIMPLEMENTED();
244 // TODO(jam): need to support this if we support types other than 248 // TODO(jam): need to support this if we support types other than
245 // SHARED_MEMORY_BUFFER. 249 // SHARED_MEMORY_BUFFER.
246 //gpu_memory_buffer_manager->SetDestructionSyncPoint(gpu_memory_buffer, 250 //gpu_memory_buffer_manager->SetDestructionSyncPoint(gpu_memory_buffer,
247 // InsertSyncPoint()); 251 // InsertSyncPoint());
248 } 252 }
249 253
250 return new_id; 254 return new_id;
251 } 255 }
252 256
253 void CommandBufferClientImpl::DestroyImage(int32 id) { 257 void CommandBufferClientImpl::DestroyImage(int32_t id) {
254 command_buffer_->DestroyImage(id); 258 command_buffer_->DestroyImage(id);
255 } 259 }
256 260
257 int32_t CommandBufferClientImpl::CreateGpuMemoryBufferImage( 261 int32_t CommandBufferClientImpl::CreateGpuMemoryBufferImage(
258 size_t width, 262 size_t width,
259 size_t height, 263 size_t height,
260 unsigned internalformat, 264 unsigned internalformat,
261 unsigned usage) { 265 unsigned usage) {
262 scoped_ptr<gfx::GpuMemoryBuffer> buffer(mus::MojoGpuMemoryBufferImpl::Create( 266 scoped_ptr<gfx::GpuMemoryBuffer> buffer(mus::MojoGpuMemoryBufferImpl::Create(
263 gfx::Size(static_cast<int>(width), static_cast<int>(height)), 267 gfx::Size(static_cast<int>(width), static_cast<int>(height)),
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
388 392
389 // It is also safe to wait on the same context. 393 // It is also safe to wait on the same context.
390 if (sync_token->namespace_id() == gpu::CommandBufferNamespace::MOJO && 394 if (sync_token->namespace_id() == gpu::CommandBufferNamespace::MOJO &&
391 sync_token->command_buffer_id() == GetCommandBufferID()) 395 sync_token->command_buffer_id() == GetCommandBufferID())
392 return true; 396 return true;
393 397
394 return false; 398 return false;
395 } 399 }
396 400
397 } // namespace gles2 401 } // namespace gles2
OLDNEW
« no previous file with comments | « mojo/gles2/command_buffer_client_impl.h ('k') | mojo/gles2/gles2_context.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698