| 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 "../common/buffer.h" | 8 #include "../common/buffer.h" |
| 9 #include "../common/compiler_specific.h" | 9 #include "../common/compiler_specific.h" |
| 10 #include "../common/gles2_cmd_utils.h" | 10 #include "../common/gles2_cmd_utils.h" |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 53 class TransferBufferInterface { | 53 class TransferBufferInterface { |
| 54 public: | 54 public: |
| 55 TransferBufferInterface() { } | 55 TransferBufferInterface() { } |
| 56 virtual ~TransferBufferInterface() { } | 56 virtual ~TransferBufferInterface() { } |
| 57 | 57 |
| 58 virtual bool Initialize( | 58 virtual bool Initialize( |
| 59 unsigned int buffer_size, | 59 unsigned int buffer_size, |
| 60 unsigned int result_size, | 60 unsigned int result_size, |
| 61 unsigned int min_buffer_size, | 61 unsigned int min_buffer_size, |
| 62 unsigned int max_buffer_size, | 62 unsigned int max_buffer_size, |
| 63 unsigned int alignment) = 0; | 63 unsigned int alignment, |
| 64 unsigned int size_to_flush) = 0; |
| 64 | 65 |
| 65 virtual int GetShmId() = 0; | 66 virtual int GetShmId() = 0; |
| 66 virtual void* GetResultBuffer() = 0; | 67 virtual void* GetResultBuffer() = 0; |
| 67 virtual int GetResultOffset() = 0; | 68 virtual int GetResultOffset() = 0; |
| 68 | 69 |
| 69 virtual void Free() = 0; | 70 virtual void Free() = 0; |
| 70 | 71 |
| 71 virtual bool HaveBuffer() const = 0; | 72 virtual bool HaveBuffer() const = 0; |
| 72 | 73 |
| 73 // Allocates up to size bytes. | 74 // Allocates up to size bytes. |
| (...skipping 13 matching lines...) Expand all Loading... |
| 87 public: | 88 public: |
| 88 TransferBuffer(CommandBufferHelper* helper); | 89 TransferBuffer(CommandBufferHelper* helper); |
| 89 virtual ~TransferBuffer(); | 90 virtual ~TransferBuffer(); |
| 90 | 91 |
| 91 // Overridden from TransferBufferInterface. | 92 // Overridden from TransferBufferInterface. |
| 92 virtual bool Initialize( | 93 virtual bool Initialize( |
| 93 unsigned int buffer_size, | 94 unsigned int buffer_size, |
| 94 unsigned int result_size, | 95 unsigned int result_size, |
| 95 unsigned int min_buffer_size, | 96 unsigned int min_buffer_size, |
| 96 unsigned int max_buffer_size, | 97 unsigned int max_buffer_size, |
| 97 unsigned int alignment) OVERRIDE; | 98 unsigned int alignment, |
| 99 unsigned int size_to_flush) OVERRIDE; |
| 98 virtual int GetShmId() OVERRIDE; | 100 virtual int GetShmId() OVERRIDE; |
| 99 virtual void* GetResultBuffer() OVERRIDE; | 101 virtual void* GetResultBuffer() OVERRIDE; |
| 100 virtual int GetResultOffset() OVERRIDE; | 102 virtual int GetResultOffset() OVERRIDE; |
| 101 virtual void Free() OVERRIDE; | 103 virtual void Free() OVERRIDE; |
| 102 virtual bool HaveBuffer() const OVERRIDE; | 104 virtual bool HaveBuffer() const OVERRIDE; |
| 103 virtual void* AllocUpTo( | 105 virtual void* AllocUpTo( |
| 104 unsigned int size, unsigned int* size_allocated) OVERRIDE; | 106 unsigned int size, unsigned int* size_allocated) OVERRIDE; |
| 105 virtual void* Alloc(unsigned int size) OVERRIDE; | 107 virtual void* Alloc(unsigned int size) OVERRIDE; |
| 106 virtual RingBuffer::Offset GetOffset(void* pointer) const OVERRIDE; | 108 virtual RingBuffer::Offset GetOffset(void* pointer) const OVERRIDE; |
| 107 virtual void FreePendingToken(void* p, unsigned int token) OVERRIDE; | 109 virtual void FreePendingToken(void* p, unsigned int token) OVERRIDE; |
| (...skipping 16 matching lines...) Expand all Loading... |
| 124 | 126 |
| 125 // min size we'll consider successful | 127 // min size we'll consider successful |
| 126 unsigned int min_buffer_size_; | 128 unsigned int min_buffer_size_; |
| 127 | 129 |
| 128 // max size we'll let the buffer grow | 130 // max size we'll let the buffer grow |
| 129 unsigned int max_buffer_size_; | 131 unsigned int max_buffer_size_; |
| 130 | 132 |
| 131 // alignment for allocations | 133 // alignment for allocations |
| 132 unsigned int alignment_; | 134 unsigned int alignment_; |
| 133 | 135 |
| 136 // Size at which to do an async flush. 0 = never. |
| 137 unsigned int size_to_flush_; |
| 138 |
| 139 // Number of bytes since we last flushed. |
| 140 unsigned int bytes_since_last_flush_; |
| 141 |
| 134 // the current buffer. | 142 // the current buffer. |
| 135 gpu::Buffer buffer_; | 143 gpu::Buffer buffer_; |
| 136 | 144 |
| 137 // id of buffer. -1 = no buffer | 145 // id of buffer. -1 = no buffer |
| 138 int32 buffer_id_; | 146 int32 buffer_id_; |
| 139 | 147 |
| 140 // address of result area | 148 // address of result area |
| 141 void* result_buffer_; | 149 void* result_buffer_; |
| 142 | 150 |
| 143 // offset to result area | 151 // offset to result area |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 212 } | 220 } |
| 213 | 221 |
| 214 unsigned int num_elements() const { | 222 unsigned int num_elements() const { |
| 215 return size() / sizeof(T); | 223 return size() / sizeof(T); |
| 216 } | 224 } |
| 217 }; | 225 }; |
| 218 | 226 |
| 219 } // namespace gpu | 227 } // namespace gpu |
| 220 | 228 |
| 221 #endif // GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ | 229 #endif // GPU_COMMAND_BUFFER_CLIENT_TRANSFER_BUFFER_H_ |
| OLD | NEW |