| 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 GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ | 5 #ifndef GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ |
| 6 #define GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ | 6 #define GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ |
| 7 | 7 |
| 8 #include "../../gpu_export.h" | 8 #include "../../gpu_export.h" |
| 9 #include "../common/buffer.h" | 9 #include "../common/buffer.h" |
| 10 #include "../common/compiler_specific.h" | 10 #include "../common/compiler_specific.h" |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 }; | 85 }; |
| 86 | 86 |
| 87 // Class that manages the transfer buffer. | 87 // Class that manages the transfer buffer. |
| 88 class GPU_EXPORT TransferBuffer : public TransferBufferInterface { | 88 class GPU_EXPORT TransferBuffer : public TransferBufferInterface { |
| 89 public: | 89 public: |
| 90 TransferBuffer(CommandBufferHelper* helper); | 90 TransferBuffer(CommandBufferHelper* helper); |
| 91 virtual ~TransferBuffer(); | 91 virtual ~TransferBuffer(); |
| 92 | 92 |
| 93 // Overridden from TransferBufferInterface. | 93 // Overridden from TransferBufferInterface. |
| 94 virtual bool Initialize( | 94 virtual bool Initialize( |
| 95 unsigned int buffer_size, | 95 unsigned int default_buffer_size, |
| 96 unsigned int result_size, | 96 unsigned int result_size, |
| 97 unsigned int min_buffer_size, | 97 unsigned int min_buffer_size, |
| 98 unsigned int max_buffer_size, | 98 unsigned int max_buffer_size, |
| 99 unsigned int alignment, | 99 unsigned int alignment, |
| 100 unsigned int size_to_flush) OVERRIDE; | 100 unsigned int size_to_flush) OVERRIDE; |
| 101 virtual int GetShmId() OVERRIDE; | 101 virtual int GetShmId() OVERRIDE; |
| 102 virtual void* GetResultBuffer() OVERRIDE; | 102 virtual void* GetResultBuffer() OVERRIDE; |
| 103 virtual int GetResultOffset() OVERRIDE; | 103 virtual int GetResultOffset() OVERRIDE; |
| 104 virtual void Free() OVERRIDE; | 104 virtual void Free() OVERRIDE; |
| 105 virtual bool HaveBuffer() const OVERRIDE; | 105 virtual bool HaveBuffer() const OVERRIDE; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 118 void ReallocateRingBuffer(unsigned int size); | 118 void ReallocateRingBuffer(unsigned int size); |
| 119 | 119 |
| 120 void AllocateRingBuffer(unsigned int size); | 120 void AllocateRingBuffer(unsigned int size); |
| 121 | 121 |
| 122 CommandBufferHelper* helper_; | 122 CommandBufferHelper* helper_; |
| 123 scoped_ptr<AlignedRingBuffer> ring_buffer_; | 123 scoped_ptr<AlignedRingBuffer> ring_buffer_; |
| 124 | 124 |
| 125 // size reserved for results | 125 // size reserved for results |
| 126 unsigned int result_size_; | 126 unsigned int result_size_; |
| 127 | 127 |
| 128 // default size. Size we want when starting or re-allocating |
| 129 unsigned int default_buffer_size_; |
| 130 |
| 128 // min size we'll consider successful | 131 // min size we'll consider successful |
| 129 unsigned int min_buffer_size_; | 132 unsigned int min_buffer_size_; |
| 130 | 133 |
| 131 // max size we'll let the buffer grow | 134 // max size we'll let the buffer grow |
| 132 unsigned int max_buffer_size_; | 135 unsigned int max_buffer_size_; |
| 133 | 136 |
| 134 // alignment for allocations | 137 // alignment for allocations |
| 135 unsigned int alignment_; | 138 unsigned int alignment_; |
| 136 | 139 |
| 137 // Size at which to do an async flush. 0 = never. | 140 // Size at which to do an async flush. 0 = never. |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 221 } | 224 } |
| 222 | 225 |
| 223 unsigned int num_elements() const { | 226 unsigned int num_elements() const { |
| 224 return size() / sizeof(T); | 227 return size() / sizeof(T); |
| 225 } | 228 } |
| 226 }; | 229 }; |
| 227 | 230 |
| 228 } // namespace gpu | 231 } // namespace gpu |
| 229 | 232 |
| 230 #endif // GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ | 233 #endif // GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ |
| OLD | NEW |