]> Creatis software - cpPlugins.git/blob - lib/ivq/ITK/IncrementalMeanAndVariance.h
39e6c2ec262ae320c0917810a28a9d5e4255b334
[cpPlugins.git] / lib / ivq / ITK / IncrementalMeanAndVariance.h
1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
5
6 #ifndef __ivq__ITK__IncrementalMeanAndVariance__h__
7 #define __ivq__ITK__IncrementalMeanAndVariance__h__
8
9 #include <ivq/ivq_export.h>
10
11 namespace ivq
12 {
13   namespace ITK
14   {
15     /**
16      */
17     class IVQ_EXPORT IncrementalMeanAndVariance
18     {
19     public:
20       typedef IncrementalMeanAndVariance Self;
21
22     public:
23       IncrementalMeanAndVariance( );
24       virtual ~IncrementalMeanAndVariance( );
25
26       double GetMean( ) const;
27       double GetVariance( ) const;
28       double GetDeviation( ) const;
29       unsigned long GetNumberOfSamples( ) const;
30
31       void Clear( );
32       void AddValue( double v );
33
34     protected:
35       double m_M;
36       double m_V;
37       double m_N;
38     };
39
40   } // ecapseman
41
42 } // ecapseman
43
44 #endif // __ivq__ITK__IncrementalMeanAndVariance__h__
45
46 // eof - $RCSfile$