Minor updates on ringbuffer and formatting.

This commit is contained in:
genxium 2022-12-02 10:20:58 +08:00
parent 3b0db64792
commit 0373665382
3 changed files with 5 additions and 5 deletions

View File

@ -26,7 +26,7 @@ func NewRingBuffer(n int32) *RingBuffer {
} }
func (rb *RingBuffer) Put(pItem interface{}) { func (rb *RingBuffer) Put(pItem interface{}) {
for rb.Cnt >= rb.N-1 { for 0 < rb.Cnt && rb.Cnt >= rb.N {
// Make room for the new element // Make room for the new element
rb.Pop() rb.Pop()
} }
@ -78,7 +78,7 @@ func (rb *RingBuffer) GetByOffset(offsetFromSt int32) interface{} {
} }
func (rb *RingBuffer) GetByFrameId(frameId int32) interface{} { func (rb *RingBuffer) GetByFrameId(frameId int32) interface{} {
if frameId >= rb.EdFrameId { if frameId >= rb.EdFrameId || frameId < rb.StFrameId {
return nil return nil
} }
return rb.GetByOffset(frameId - rb.StFrameId) return rb.GetByOffset(frameId - rb.StFrameId)

View File

@ -440,7 +440,7 @@
"array": [ "array": [
0, 0,
0, 0,
210.55745061629165, 210.4441731196186,
0, 0,
0, 0,
0, 0,

View File

@ -13,7 +13,7 @@ var RingBuffer = function(capacity) {
}; };
RingBuffer.prototype.put = function(item) { RingBuffer.prototype.put = function(item) {
while (this.cnt >= this.n - 1) { while (0 < this.cnt && this.cnt >= this.n) {
// Make room for the new element // Make room for the new element
this.pop(); this.pop();
} }
@ -65,7 +65,7 @@ RingBuffer.prototype.getArrIdxByOffset = function(offsetFromSt) {
}; };
RingBuffer.prototype.getByFrameId = function(frameId) { RingBuffer.prototype.getByFrameId = function(frameId) {
if (frameId >= this.edFrameId) return null; if (frameId >= this.edFrameId || frameId < this.stFrameId) return null;
const arrIdx = this.getArrIdxByOffset(frameId - this.stFrameId); const arrIdx = this.getArrIdxByOffset(frameId - this.stFrameId);
return (null == arrIdx ? null : this.eles[arrIdx]); return (null == arrIdx ? null : this.eles[arrIdx]);
}; };