Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

mutrecord.h

Go to the documentation of this file.
00001 
00002 // Statistical module.
00003 // Collects statistics about mutations rates.
00004 
00005 // The globality is "a bit ugly"
00006 
00007 #ifndef __MUTRECORD_H__
00008 #define __MUTRECORD_H__
00009 
00013 class MutabilityRecord : public Object {
00014   public:
00015 
00018     static bool     record;
00019 
00023     static void     addFloatMutability  (double x) {
00024         smFloatSum+=x;
00025         smFloatSamples++;
00026         if (x<smFloatMin) smFloatMin = x;
00027         if (x>smFloatMax) smFloatMax = x;
00028     }
00032     static void     addFloatVariance    (double x) {
00033         smFloatVarSum+=x;
00034         smFloatVarSamples++;
00035         if (x<smFloatVarMin) smFloatVarMin = x;
00036         if (x>smFloatVarMax) smFloatVarMax = x;
00037     }
00041     static void     addBoolMutability   (double x) {
00042         smBoolSum+=x;
00043         smBoolSamples++;
00044         if (x<smBoolMin) smBoolMin = x;
00045         if (x>smBoolMax) smBoolMax = x;
00046     }
00049     static void     reset               () {
00050         smFloatVarMin=smFloatMin=smBoolMin=666;
00051         smFloatVarSum=smFloatSum=smBoolSum=0;
00052         smFloatVarMax=smFloatMax=smBoolMax=-1;
00053         smFloatVarSamples=smFloatSamples=smBoolSamples=0;
00054     }
00055 
00056     static double   floatMin            () {return smFloatMin;}
00057     static double   floatAvg            () {return smFloatSum/smFloatSamples;}
00058     static double   floatMax            () {return smFloatMax;}
00059     static double   floatVarMin         () {return smFloatVarMin;}
00060     static double   floatVarAvg         () {return smFloatVarSum/smFloatVarSamples;}
00061     static double   floatVarMax         () {return smFloatVarMax;}
00062     static double   boolMin             () {return smBoolMin;}
00063     static double   boolAvg             () {return smBoolSum/smBoolSamples;}
00064     static double   boolMax             () {return smBoolMax;}
00065     
00066   protected:
00067     static int      smFloatVarSamples, smFloatSamples, smBoolSamples;
00068     static double   smBoolSum, smBoolMin, smBoolMax;
00069     static double   smFloatSum, smFloatMin, smFloatMax;
00070     static double   smFloatVarSum, smFloatVarMin, smFloatVarMax;
00071 };
00072 
00073 #endif
00074 

Generated on Thu Feb 10 20:12:00 2005 for NeHeP by doxygen1.2.18