summaryrefslogtreecommitdiff
path: root/src/plot/plot-buffer.js
diff options
context:
space:
mode:
authorgrothedev <grothedev@gmail.com>2026-05-29 21:49:20 -0400
committergrothedev <grothedev@gmail.com>2026-05-29 21:49:20 -0400
commit6196004b51a6850909c154f5402ff4858eab479a (patch)
tree126b8bb1600d0a656e0df016e25d08c390f3540e /src/plot/plot-buffer.js
parent27dc5849c3eaf4824d79938e7077abdbe2c82e24 (diff)
mv web stuff to root project dirHEADprototypeframeworkmain
Diffstat (limited to 'src/plot/plot-buffer.js')
-rw-r--r--src/plot/plot-buffer.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/plot/plot-buffer.js b/src/plot/plot-buffer.js
new file mode 100644
index 0000000..b13cdd8
--- /dev/null
+++ b/src/plot/plot-buffer.js
@@ -0,0 +1,22 @@
+export class PlotBuffer {
+ constructor(maxPoints = 1600) {
+ this.maxPoints = maxPoints;
+ this.points = [];
+ }
+
+ addPoint(point) {
+ this.points.push(point);
+ if (this.points.length > this.maxPoints) {
+ this.points.splice(0, this.points.length - this.maxPoints);
+ }
+ }
+
+ clear() {
+ this.points = [];
+ }
+
+ getVisiblePoints(currentPlotTimeMs, windowDurationMs) {
+ const minTime = currentPlotTimeMs - windowDurationMs;
+ return this.points.filter((point) => point.timeMs >= minTime && point.timeMs <= currentPlotTimeMs);
+ }
+}