瀏覽代碼

RingBuffer::decrease_write

Fabio Alessandrelli 7 年之前
父節點
當前提交
c0435959da
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      core/ring_buffer.h

+ 6 - 0
core/ring_buffer.h

@@ -135,6 +135,12 @@ public:
 		return p_n;
 		return p_n;
 	};
 	};
 
 
+	inline int decrease_write(int p_n) {
+		p_n = MIN(p_n, data_left());
+		inc(write_pos, size_mask + 1 - p_n);
+		return p_n;
+	}
+
 	Error write(const T &p_v) {
 	Error write(const T &p_v) {
 		ERR_FAIL_COND_V(space_left() < 1, FAILED);
 		ERR_FAIL_COND_V(space_left() < 1, FAILED);
 		data.write[inc(write_pos, 1)] = p_v;
 		data.write[inc(write_pos, 1)] = p_v;