view stat.h @ 142:fd085d61e4ca

Rework data logging
author Daniele Nicolodi <daniele.nicolodi@obspm.fr>
date Wed, 22 Jan 2014 14:45:23 +0100
parents e04123ab79ef
children
line wrap: on
line source

#ifndef __STAT_H__
#define __STAT_H__

struct stat {
	int samples;
	double mean;
	double slope;
	double previous;
};

void stat_zero(struct stat *s);
void stat_accumulate(struct stat *s, double value);

/* must be a power of two */
#define _ROLLMEAN_WLEN 16

struct rollmean {
	unsigned int nobs;
	double mean;
	double acc;
	double prev[_ROLLMEAN_WLEN];
};

void rollmean_zero(struct rollmean *s);
void rollmean_accumulate(struct rollmean *s, double value);

#endif