1 /**
2 @file
3 @ingroup wave
4 */
5
6 #include <bpm/bpm_wf.h>
7
wfstat_reset(wfstat_t * s)8 int wfstat_reset( wfstat_t *s ) {
9
10 if ( ! s ) {
11 bpm_error( "Invalid pointer argument in reset_wfstats()",
12 __FILE__, __LINE__ );
13 return BPM_FAILURE;
14 }
15
16 // re-initialise the structure
17 s->imax = 0;
18 s->imin = 0;
19 s->max = -DBL_MAX;
20 s->min = DBL_MAX;
21 s->mean = 0.;
22 s->rms = 0.;
23
24 return BPM_SUCCESS;
25 }
26
27 // ----------------------------------------------------------------------------
28
wfstat_print(FILE * of,wfstat_t * s)29 void wfstat_print( FILE *of, wfstat_t *s ) {
30
31 if ( ! of || ! s ) {
32 bpm_error( "Invalid pointer arguments in wfstat_print()", __FILE__, __LINE__ );
33 return;
34 }
35
36 fprintf( of, "Basic waveform statistics:\n" );
37 fprintf( of, " - maximum ... : wf[%d] = %.14e\n", s->imax, s->max );
38 fprintf( of, " - minimum ... : wf[%d] = %.14e\n", s->imin, s->min );
39 fprintf( of, " - mean ...... : %.14e\n", s->mean );
40 fprintf( of, " - rms ....... : %.14e\n", s->rms );
41 fflush( of );
42
43 return;
44 }
45