OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ | 5 #ifndef CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ |
6 #define CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ | 6 #define CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <queue> | 9 #include <queue> |
10 #include <string> | 10 #include <string> |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 | 74 |
75 // Sends an IPC message to create a GpuVideoEncodeAccelerator. Creates and | 75 // Sends an IPC message to create a GpuVideoEncodeAccelerator. Creates and |
76 // returns it as an owned pointer to a media::VideoEncodeAccelerator. Returns | 76 // returns it as an owned pointer to a media::VideoEncodeAccelerator. Returns |
77 // NULL on failure to create the GpuVideoEncodeAcceleratorHost. | 77 // NULL on failure to create the GpuVideoEncodeAcceleratorHost. |
78 // Note that the GpuVideoEncodeAccelerator may still fail to be created in | 78 // Note that the GpuVideoEncodeAccelerator may still fail to be created in |
79 // the GPU process, even if this returns non-NULL. In this case the VEA client | 79 // the GPU process, even if this returns non-NULL. In this case the VEA client |
80 // is notified of an error later, after Initialize(); | 80 // is notified of an error later, after Initialize(); |
81 scoped_ptr<media::VideoEncodeAccelerator> CreateVideoEncoder(); | 81 scoped_ptr<media::VideoEncodeAccelerator> CreateVideoEncoder(); |
82 | 82 |
83 // IPC::Listener implementation: | 83 // IPC::Listener implementation: |
84 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; | 84 virtual bool OnMessageReceived(const IPC::Message& message) override; |
85 virtual void OnChannelError() OVERRIDE; | 85 virtual void OnChannelError() override; |
86 | 86 |
87 // CommandBuffer implementation: | 87 // CommandBuffer implementation: |
88 virtual bool Initialize() OVERRIDE; | 88 virtual bool Initialize() override; |
89 virtual State GetLastState() OVERRIDE; | 89 virtual State GetLastState() override; |
90 virtual int32 GetLastToken() OVERRIDE; | 90 virtual int32 GetLastToken() override; |
91 virtual void Flush(int32 put_offset) OVERRIDE; | 91 virtual void Flush(int32 put_offset) override; |
92 virtual void WaitForTokenInRange(int32 start, int32 end) OVERRIDE; | 92 virtual void WaitForTokenInRange(int32 start, int32 end) override; |
93 virtual void WaitForGetOffsetInRange(int32 start, int32 end) OVERRIDE; | 93 virtual void WaitForGetOffsetInRange(int32 start, int32 end) override; |
94 virtual void SetGetBuffer(int32 shm_id) OVERRIDE; | 94 virtual void SetGetBuffer(int32 shm_id) override; |
95 virtual scoped_refptr<gpu::Buffer> CreateTransferBuffer(size_t size, | 95 virtual scoped_refptr<gpu::Buffer> CreateTransferBuffer(size_t size, |
96 int32* id) OVERRIDE; | 96 int32* id) override; |
97 virtual void DestroyTransferBuffer(int32 id) OVERRIDE; | 97 virtual void DestroyTransferBuffer(int32 id) override; |
98 | 98 |
99 // gpu::GpuControl implementation: | 99 // gpu::GpuControl implementation: |
100 virtual gpu::Capabilities GetCapabilities() OVERRIDE; | 100 virtual gpu::Capabilities GetCapabilities() override; |
101 virtual gfx::GpuMemoryBuffer* CreateGpuMemoryBuffer(size_t width, | 101 virtual gfx::GpuMemoryBuffer* CreateGpuMemoryBuffer(size_t width, |
102 size_t height, | 102 size_t height, |
103 unsigned internalformat, | 103 unsigned internalformat, |
104 unsigned usage, | 104 unsigned usage, |
105 int32* id) OVERRIDE; | 105 int32* id) override; |
106 virtual void DestroyGpuMemoryBuffer(int32 id) OVERRIDE; | 106 virtual void DestroyGpuMemoryBuffer(int32 id) override; |
107 virtual uint32 InsertSyncPoint() OVERRIDE; | 107 virtual uint32 InsertSyncPoint() override; |
108 virtual uint32_t InsertFutureSyncPoint() OVERRIDE; | 108 virtual uint32_t InsertFutureSyncPoint() override; |
109 virtual void RetireSyncPoint(uint32_t sync_point) OVERRIDE; | 109 virtual void RetireSyncPoint(uint32_t sync_point) override; |
110 virtual void SignalSyncPoint(uint32 sync_point, | 110 virtual void SignalSyncPoint(uint32 sync_point, |
111 const base::Closure& callback) OVERRIDE; | 111 const base::Closure& callback) override; |
112 virtual void SignalQuery(uint32 query, | 112 virtual void SignalQuery(uint32 query, |
113 const base::Closure& callback) OVERRIDE; | 113 const base::Closure& callback) override; |
114 virtual void SetSurfaceVisible(bool visible) OVERRIDE; | 114 virtual void SetSurfaceVisible(bool visible) override; |
115 virtual uint32 CreateStreamTexture(uint32 texture_id) OVERRIDE; | 115 virtual uint32 CreateStreamTexture(uint32 texture_id) override; |
116 | 116 |
117 int GetRouteID() const; | 117 int GetRouteID() const; |
118 bool ProduceFrontBuffer(const gpu::Mailbox& mailbox); | 118 bool ProduceFrontBuffer(const gpu::Mailbox& mailbox); |
119 void SetChannelErrorCallback(const base::Closure& callback); | 119 void SetChannelErrorCallback(const base::Closure& callback); |
120 | 120 |
121 typedef base::Callback<void(const gpu::MemoryAllocation&)> | 121 typedef base::Callback<void(const gpu::MemoryAllocation&)> |
122 MemoryAllocationChangedCallback; | 122 MemoryAllocationChangedCallback; |
123 void SetMemoryAllocationChangedCallback( | 123 void SetMemoryAllocationChangedCallback( |
124 const MemoryAllocationChangedCallback& callback); | 124 const MemoryAllocationChangedCallback& callback); |
125 void AddDeletionObserver(DeletionObserver* observer); | 125 void AddDeletionObserver(DeletionObserver* observer); |
126 void RemoveDeletionObserver(DeletionObserver* observer); | 126 void RemoveDeletionObserver(DeletionObserver* observer); |
127 | 127 |
128 bool EnsureBackbuffer(); | 128 bool EnsureBackbuffer(); |
129 | 129 |
130 void SetOnConsoleMessageCallback( | 130 void SetOnConsoleMessageCallback( |
131 const GpuConsoleMessageCallback& callback); | 131 const GpuConsoleMessageCallback& callback); |
132 | 132 |
133 void SetLatencyInfo(const std::vector<ui::LatencyInfo>& latency_info); | 133 void SetLatencyInfo(const std::vector<ui::LatencyInfo>& latency_info); |
134 | 134 |
135 // TODO(apatrick): this is a temporary optimization while skia is calling | 135 // TODO(apatrick): this is a temporary optimization while skia is calling |
136 // ContentGLContext::MakeCurrent prior to every GL call. It saves returning 6 | 136 // ContentGLContext::MakeCurrent prior to every GL call. It saves returning 6 |
137 // ints redundantly when only the error is needed for the | 137 // ints redundantly when only the error is needed for the |
138 // CommandBufferProxyImpl implementation. | 138 // CommandBufferProxyImpl implementation. |
139 virtual gpu::error::Error GetLastError() OVERRIDE; | 139 virtual gpu::error::Error GetLastError() override; |
140 | 140 |
141 GpuChannelHost* channel() const { return channel_; } | 141 GpuChannelHost* channel() const { return channel_; } |
142 | 142 |
143 base::SharedMemoryHandle GetSharedStateHandle() const { | 143 base::SharedMemoryHandle GetSharedStateHandle() const { |
144 return shared_state_shm_->handle(); | 144 return shared_state_shm_->handle(); |
145 } | 145 } |
146 | 146 |
147 private: | 147 private: |
148 typedef std::map<int32, scoped_refptr<gpu::Buffer> > TransferBufferMap; | 148 typedef std::map<int32, scoped_refptr<gpu::Buffer> > TransferBufferMap; |
149 typedef base::hash_map<uint32, base::Closure> SignalTaskMap; | 149 typedef base::hash_map<uint32, base::Closure> SignalTaskMap; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 gpu::Capabilities capabilities_; | 200 gpu::Capabilities capabilities_; |
201 | 201 |
202 std::vector<ui::LatencyInfo> latency_info_; | 202 std::vector<ui::LatencyInfo> latency_info_; |
203 | 203 |
204 DISALLOW_COPY_AND_ASSIGN(CommandBufferProxyImpl); | 204 DISALLOW_COPY_AND_ASSIGN(CommandBufferProxyImpl); |
205 }; | 205 }; |
206 | 206 |
207 } // namespace content | 207 } // namespace content |
208 | 208 |
209 #endif // CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ | 209 #endif // CONTENT_COMMON_GPU_CLIENT_COMMAND_BUFFER_PROXY_IMPL_H_ |
OLD | NEW |