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

Side by Side Diff: cc/test/test_gpu_memory_buffer_manager.cc

Issue 2102293002: Remove GpuMemoryBuffer::IsInUseByMacOSWindowServer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unused var Created 4 years, 5 months 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
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 "cc/test/test_gpu_memory_buffer_manager.h" 5 #include "cc/test/test_gpu_memory_buffer_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 14 matching lines...) Expand all
25 std::unique_ptr<base::SharedMemory> shared_memory, 25 std::unique_ptr<base::SharedMemory> shared_memory,
26 size_t offset, 26 size_t offset,
27 size_t stride) 27 size_t stride)
28 : manager_(manager), 28 : manager_(manager),
29 id_(id), 29 id_(id),
30 size_(size), 30 size_(size),
31 format_(format), 31 format_(format),
32 shared_memory_(std::move(shared_memory)), 32 shared_memory_(std::move(shared_memory)),
33 offset_(offset), 33 offset_(offset),
34 stride_(stride), 34 stride_(stride),
35 mapped_(false), 35 mapped_(false) {}
36 is_in_use_by_window_server_(false) {}
37 36
38 ~GpuMemoryBufferImpl() override { manager_->OnGpuMemoryBufferDestroyed(id_); } 37 ~GpuMemoryBufferImpl() override { manager_->OnGpuMemoryBufferDestroyed(id_); }
39 38
40 // Overridden from gfx::GpuMemoryBuffer: 39 // Overridden from gfx::GpuMemoryBuffer:
41 bool Map() override { 40 bool Map() override {
42 DCHECK(!mapped_); 41 DCHECK(!mapped_);
43 DCHECK_EQ(stride_, gfx::RowSizeForBufferFormat(size_.width(), format_, 0)); 42 DCHECK_EQ(stride_, gfx::RowSizeForBufferFormat(size_.width(), format_, 0));
44 if (!shared_memory_->Map(offset_ + 43 if (!shared_memory_->Map(offset_ +
45 gfx::BufferSizeForBufferFormat(size_, format_))) 44 gfx::BufferSizeForBufferFormat(size_, format_)))
46 return false; 45 return false;
47 mapped_ = true; 46 mapped_ = true;
48 return true; 47 return true;
49 } 48 }
50 void* memory(size_t plane) override { 49 void* memory(size_t plane) override {
51 DCHECK(mapped_); 50 DCHECK(mapped_);
52 DCHECK_LT(plane, gfx::NumberOfPlanesForBufferFormat(format_)); 51 DCHECK_LT(plane, gfx::NumberOfPlanesForBufferFormat(format_));
53 return reinterpret_cast<uint8_t*>(shared_memory_->memory()) + offset_ + 52 return reinterpret_cast<uint8_t*>(shared_memory_->memory()) + offset_ +
54 gfx::BufferOffsetForBufferFormat(size_, format_, plane); 53 gfx::BufferOffsetForBufferFormat(size_, format_, plane);
55 } 54 }
56 void Unmap() override { 55 void Unmap() override {
57 DCHECK(mapped_); 56 DCHECK(mapped_);
58 shared_memory_->Unmap(); 57 shared_memory_->Unmap();
59 mapped_ = false; 58 mapped_ = false;
60 } 59 }
61 bool IsInUseByMacOSWindowServer() const override {
62 return is_in_use_by_window_server_;
63 }
64 gfx::Size GetSize() const override { return size_; } 60 gfx::Size GetSize() const override { return size_; }
65 gfx::BufferFormat GetFormat() const override { return format_; } 61 gfx::BufferFormat GetFormat() const override { return format_; }
66 int stride(size_t plane) const override { 62 int stride(size_t plane) const override {
67 DCHECK_LT(plane, gfx::NumberOfPlanesForBufferFormat(format_)); 63 DCHECK_LT(plane, gfx::NumberOfPlanesForBufferFormat(format_));
68 return base::checked_cast<int>(gfx::RowSizeForBufferFormat( 64 return base::checked_cast<int>(gfx::RowSizeForBufferFormat(
69 size_.width(), format_, static_cast<int>(plane))); 65 size_.width(), format_, static_cast<int>(plane)));
70 } 66 }
71 gfx::GpuMemoryBufferId GetId() const override { return id_; } 67 gfx::GpuMemoryBufferId GetId() const override { return id_; }
72 gfx::GpuMemoryBufferHandle GetHandle() const override { 68 gfx::GpuMemoryBufferHandle GetHandle() const override {
73 gfx::GpuMemoryBufferHandle handle; 69 gfx::GpuMemoryBufferHandle handle;
74 handle.type = gfx::SHARED_MEMORY_BUFFER; 70 handle.type = gfx::SHARED_MEMORY_BUFFER;
75 handle.handle = shared_memory_->handle(); 71 handle.handle = shared_memory_->handle();
76 handle.offset = base::checked_cast<uint32_t>(offset_); 72 handle.offset = base::checked_cast<uint32_t>(offset_);
77 handle.stride = base::checked_cast<int32_t>(stride_); 73 handle.stride = base::checked_cast<int32_t>(stride_);
78 return handle; 74 return handle;
79 } 75 }
80 ClientBuffer AsClientBuffer() override { 76 ClientBuffer AsClientBuffer() override {
81 return reinterpret_cast<ClientBuffer>(this); 77 return reinterpret_cast<ClientBuffer>(this);
82 } 78 }
83 79
84 void SetIsInUseByMacOSWindowServer(bool value) {
85 is_in_use_by_window_server_ = value;
86 }
87
88 private: 80 private:
89 TestGpuMemoryBufferManager* manager_; 81 TestGpuMemoryBufferManager* manager_;
90 gfx::GpuMemoryBufferId id_; 82 gfx::GpuMemoryBufferId id_;
91 const gfx::Size size_; 83 const gfx::Size size_;
92 gfx::BufferFormat format_; 84 gfx::BufferFormat format_;
93 std::unique_ptr<base::SharedMemory> shared_memory_; 85 std::unique_ptr<base::SharedMemory> shared_memory_;
94 size_t offset_; 86 size_t offset_;
95 size_t stride_; 87 size_t stride_;
96 bool mapped_; 88 bool mapped_;
97 bool is_in_use_by_window_server_;
98 }; 89 };
99 90
100 class GpuMemoryBufferFromClient : public gfx::GpuMemoryBuffer { 91 class GpuMemoryBufferFromClient : public gfx::GpuMemoryBuffer {
101 public: 92 public:
102 GpuMemoryBufferFromClient(TestGpuMemoryBufferManager* manager, 93 GpuMemoryBufferFromClient(TestGpuMemoryBufferManager* manager,
103 int id, 94 int id,
104 gfx::GpuMemoryBuffer* client_buffer) 95 gfx::GpuMemoryBuffer* client_buffer)
105 : manager_(manager), id_(id), client_buffer_(client_buffer) {} 96 : manager_(manager), id_(id), client_buffer_(client_buffer) {}
106 97
107 ~GpuMemoryBufferFromClient() override { 98 ~GpuMemoryBufferFromClient() override {
108 manager_->OnGpuMemoryBufferDestroyed(id_); 99 manager_->OnGpuMemoryBufferDestroyed(id_);
109 } 100 }
110 101
111 bool Map() override { return client_buffer_->Map(); } 102 bool Map() override { return client_buffer_->Map(); }
112 void* memory(size_t plane) override { return client_buffer_->memory(plane); } 103 void* memory(size_t plane) override { return client_buffer_->memory(plane); }
113 void Unmap() override { client_buffer_->Unmap(); } 104 void Unmap() override { client_buffer_->Unmap(); }
114 bool IsInUseByMacOSWindowServer() const override {
115 return client_buffer_->IsInUseByMacOSWindowServer();
116 }
117 gfx::Size GetSize() const override { return client_buffer_->GetSize(); } 105 gfx::Size GetSize() const override { return client_buffer_->GetSize(); }
118 gfx::BufferFormat GetFormat() const override { 106 gfx::BufferFormat GetFormat() const override {
119 return client_buffer_->GetFormat(); 107 return client_buffer_->GetFormat();
120 } 108 }
121 int stride(size_t plane) const override { 109 int stride(size_t plane) const override {
122 return client_buffer_->stride(plane); 110 return client_buffer_->stride(plane);
123 } 111 }
124 gfx::GpuMemoryBufferId GetId() const override { return id_; } 112 gfx::GpuMemoryBufferId GetId() const override { return id_; }
125 gfx::GpuMemoryBufferHandle GetHandle() const override { 113 gfx::GpuMemoryBufferHandle GetHandle() const override {
126 return client_buffer_->GetHandle(); 114 return client_buffer_->GetHandle();
(...skipping 24 matching lines...) Expand all
151 TestGpuMemoryBufferManager::CreateClientGpuMemoryBufferManager() { 139 TestGpuMemoryBufferManager::CreateClientGpuMemoryBufferManager() {
152 std::unique_ptr<TestGpuMemoryBufferManager> client( 140 std::unique_ptr<TestGpuMemoryBufferManager> client(
153 new TestGpuMemoryBufferManager); 141 new TestGpuMemoryBufferManager);
154 client->client_id_ = ++last_client_id_; 142 client->client_id_ = ++last_client_id_;
155 client->parent_gpu_memory_buffer_manager_ = this; 143 client->parent_gpu_memory_buffer_manager_ = this;
156 144
157 clients_[client->client_id_] = client.get(); 145 clients_[client->client_id_] = client.get();
158 return client; 146 return client;
159 } 147 }
160 148
161 void TestGpuMemoryBufferManager::SetGpuMemoryBufferIsInUseByMacOSWindowServer(
162 gfx::GpuMemoryBuffer* gpu_memory_buffer,
163 bool in_use) {
164 static_cast<GpuMemoryBufferImpl*>(gpu_memory_buffer)
165 ->SetIsInUseByMacOSWindowServer(in_use);
166 }
167
168 void TestGpuMemoryBufferManager::OnGpuMemoryBufferDestroyed( 149 void TestGpuMemoryBufferManager::OnGpuMemoryBufferDestroyed(
169 gfx::GpuMemoryBufferId gpu_memory_buffer_id) { 150 gfx::GpuMemoryBufferId gpu_memory_buffer_id) {
170 DCHECK(buffers_.find(gpu_memory_buffer_id.id) != buffers_.end()); 151 DCHECK(buffers_.find(gpu_memory_buffer_id.id) != buffers_.end());
171 buffers_.erase(gpu_memory_buffer_id.id); 152 buffers_.erase(gpu_memory_buffer_id.id);
172 } 153 }
173 154
174 std::unique_ptr<gfx::GpuMemoryBuffer> 155 std::unique_ptr<gfx::GpuMemoryBuffer>
175 TestGpuMemoryBufferManager::AllocateGpuMemoryBuffer( 156 TestGpuMemoryBufferManager::AllocateGpuMemoryBuffer(
176 const gfx::Size& size, 157 const gfx::Size& size,
177 gfx::BufferFormat format, 158 gfx::BufferFormat format,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 TestGpuMemoryBufferManager::GpuMemoryBufferFromClientBuffer( 193 TestGpuMemoryBufferManager::GpuMemoryBufferFromClientBuffer(
213 ClientBuffer buffer) { 194 ClientBuffer buffer) {
214 return reinterpret_cast<gfx::GpuMemoryBuffer*>(buffer); 195 return reinterpret_cast<gfx::GpuMemoryBuffer*>(buffer);
215 } 196 }
216 197
217 void TestGpuMemoryBufferManager::SetDestructionSyncToken( 198 void TestGpuMemoryBufferManager::SetDestructionSyncToken(
218 gfx::GpuMemoryBuffer* buffer, 199 gfx::GpuMemoryBuffer* buffer,
219 const gpu::SyncToken& sync_token) {} 200 const gpu::SyncToken& sync_token) {}
220 201
221 } // namespace cc 202 } // namespace cc
OLDNEW
« no previous file with comments | « cc/test/test_gpu_memory_buffer_manager.h ('k') | gpu/ipc/client/gpu_memory_buffer_impl_io_surface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698