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