#ifndef _JUMP_RINGBUF_H #define _JUMP_RINGBUF_H 1 #define RINGBUF_MAX_SIZE 100 struct ringbuf { float buf[RINGBUF_MAX_SIZE]; float sum; float sum2; int cap; int p; int full; }; extern int ringbuf_init(struct ringbuf *ringbuf, int cap); extern void ringbuf_push(struct ringbuf *ringbuf, float value); extern int ringbuf_size(struct ringbuf *ringbuf); extern float ringbuf_mean(struct ringbuf *ringbuf); extern float ringbuf_variance(struct ringbuf *ringbuf); extern float ringbuf_stdev(struct ringbuf *ringbuf); #endif /* vim: set ts=8 sw=8 sts=8 noet: */