fdhwlib
2.0.25
|
00001 /*************************************************************************** 00002 statistics.h - description 00003 00004 begin : Fri Aug 25 2000 00005 copyright : (C) 2000 by Andreas Kopmann 00006 email : kopmann@hpe.fzk.de 00007 ***************************************************************************/ 00008 00009 00010 #ifndef STATISTICS_H 00011 #define STATISTICS_H 00012 00013 #include <cstdio> 00014 00023 class statistics { 00024 public: 00025 statistics(); 00026 ~statistics(); 00027 00028 statistics operator=(statistics zuw) { // ??? 00029 00030 this->min = zuw.min; 00031 this->max = zuw.max; 00032 this->mean = zuw.mean; 00033 this->variance = zuw.variance; 00034 00035 return(*this); // MS VC++ wants it ?! 00036 } 00037 00040 void of(unsigned short *data, int n); 00041 00045 void of(statistics *stat, int n); 00046 00047 float calcMean(unsigned short *data, int n); 00048 unsigned short calcMin(unsigned short *data, int n); 00049 unsigned short calcMax(unsigned short *data, int n); 00050 float calcVariance(unsigned short *data, int n); 00051 00052 void display(FILE *fout); 00053 00056 void setMask(unsigned short mask) { 00057 this->mask = mask; 00058 } 00059 00061 void add(statistics *stat); 00062 00064 void minus(statistics *stat); 00065 00066 00067 00068 // private: 00069 00070 unsigned short min; 00071 unsigned short max; 00072 float mean; 00073 float variance; 00074 00075 private: 00076 00078 unsigned short mask; 00079 00080 }; 00081 00082 #endif