| Index: cc/ring_buffer.h
|
| diff --git a/cc/ring_buffer.h b/cc/ring_buffer.h
|
| index 929d74cb0e91e2d28e861c77a8bce375eea8794d..5e015fe3f8604bf48283c622f3e781afd6ce73f4 100644
|
| --- a/cc/ring_buffer.h
|
| +++ b/cc/ring_buffer.h
|
| @@ -36,11 +36,20 @@ class RingBuffer {
|
| return buffer_[BufferIndex(n)];
|
| }
|
|
|
| - void SaveToBuffer(T value) {
|
| + T& MutableReadBuffer(size_t n) {
|
| + DCHECK(IsFilledIndex(n));
|
| + return buffer_[BufferIndex(n)];
|
| + }
|
| +
|
| + void SaveToBuffer(const T& value) {
|
| buffer_[BufferIndex(0)] = value;
|
| current_index_++;
|
| }
|
|
|
| + void Clear() {
|
| + current_index_ = 0;
|
| + }
|
| +
|
| private:
|
| inline size_t BufferIndex(size_t n) const {
|
| return (current_index_ + n) % size;
|
|
|