1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
// $Id$
#include <stdio.h>
#define HIST_VERSION "1.3"
struct optheader {
char *key;
char *value;
struct optheader *next;
};
typedef struct hist_s {
char *name;
double max, min, sum, sum2, sum3, sum4;
double first, last;
unsigned int num_points, num_bins;
unsigned int *hs;
unsigned int num_outer, max_num_outer;
double *outer;
struct hist_s *next;
int skew;
struct optheader *firstoptheader;
} hist_t;
#define HIST hist_t *
hist_t *histogram(char *name, unsigned int num_bins, double first,
double last);
void set_outer(unsigned int max_num_outer, hist_t *hist);
void enable_skew(hist_t *hist);
void add_field(char *key, char *value, hist_t *hist);
void add_field_n(char *key, int value, hist_t *hist);
void record(double point, hist_t *hist);
void report_to(FILE *strm, hist_t *hist);
void report();
void stats_init();
double get_mean(HIST hist);
double get_min(HIST hist);
double get_max(HIST hist);
double get_variance(HIST hist);
double get_num(HIST hist);
void set_mean(HIST hist, double mean);
void set_min(HIST hist, double min);
void set_max(HIST hist, double max);
void set_variance(HIST hist, double variance);
void add_histogram(HIST dest, HIST source);
double histfloor(double x);
|