view Histogram.h @ 7:fa6a281bd854

Nov 14 vers -- add makeFixedBinHist & Ext version & expected value &fxd name bug
author Me
date Sun, 14 Nov 2010 11:11:44 -0800
parents a2388fae93ff
children c83c27796fad
line source
1 /*
2 * Copyright 2010 OpenSourceStewardshipFoundation.org
3 * Licensed under GNU General Public License version 2
4 *
5 * Author: seanhalle@yahoo.com
6 *
7 */
9 #include "../VMS_primitive_data_types.h"
11 #ifndef _HISTOGRAM_H
12 #define _HISTOGRAM_H
14 typedef struct
15 {
16 char *name;
17 int32 startOfRange;
18 int32 endOfRange;
19 int32 numBins;
20 int32 binWidth;
21 int32 *bins;
22 }
23 Histogram;
25 typedef struct
26 {
27 float32 startOfRange;
28 float32 endOfRange;
29 int32 numBins;
30 float32 binWidth;
31 int32 *bins;
32 }
33 FloatHist;
35 typedef struct
36 {
37 float64 startOfRange;
38 float64 endOfRange;
39 int32 numBins;
40 float64 binWidth;
41 int32 *bins;
42 }
43 DblHist;
45 Histogram *
46 makeHistogram( int32 numBins, int32 startOfRange, int32 endOfRange );
48 Histogram *
49 makeFixedBinHist( int32 numBins, int32 startOfRange, int32 binWidth,
50 char *name );
52 Histogram *
53 makeFixedBinHistExt( int32 numBins, int32 startOfRange, int32 binWidth,
54 char *name );
56 void inline
57 addToHist( int32 value, Histogram *hist );
59 void inline
60 addIntervalToHist( int32 startIntvl, int32 endIntvl, Histogram *hist );
62 void
63 printHist( Histogram *hist );
65 FloatHist *
66 makeFloatHistogram( int numBins, float32 startOfRange, float32 binWidth );
68 void
69 addToFloatHist( float32 value, FloatHist *hist );
71 void
72 printFloatHist( FloatHist *hist );
75 DblHist *
76 makeDblHistogram( int numBins, float64 startOfRange, float64 binWidth );
78 void
79 addToDblHist( float64 value, DblHist *hist );
81 void
82 printDblHist( DblHist *hist );
84 #endif /* _HISTOGRAM_H */