]> git.mxchange.org Git - simgear.git/blob - simgear/structure/SGSmplstat.hxx
std:: namespace fixes, and sink some code from the subsystem header into the implemen...
[simgear.git] / simgear / structure / SGSmplstat.hxx
1 // This may look like C code, but it is really -*- C++ -*-
2 /* 
3 Copyright (C) 1988 Free Software Foundation
4     written by Dirk Grunwald (grunwald@cs.uiuc.edu)
5
6 This file is part of the GNU C++ Library.  This library is free
7 software; you can redistribute it and/or modify it under the terms of
8 the GNU Library General Public License as published by the Free
9 Software Foundation; either version 2 of the License, or (at your
10 option) any later version.  This library is distributed in the hope
11 that it will be useful, but WITHOUT ANY WARRANTY; without even the
12 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE.  See the GNU Library General Public License for more details.
14 You should have received a copy of the GNU Library General Public
15 License along with this library; if not, write to the Free Software
16 Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 */
18 #ifndef SampleStatistic_h
19
20 #define SampleStatistic_h 1
21
22
23 #undef min
24 #undef max
25
26 class SampleStatistic
27 {
28 protected:
29   int n;
30   double x;
31   double x2;
32   double minValue, maxValue;
33
34 public:  SampleStatistic ();
35   inline virtual ~ SampleStatistic ();
36   virtual void reset ();
37
38   virtual void operator += (double);
39   int samples () const;
40   double mean () const;
41   double stdDev () const;
42   double var () const;
43   double min () const;
44   double max () const;
45   double confidence (int p_percentage) const;
46   double confidence (double p_value) const;
47
48   void error (const char *msg);
49 };
50
51 // error handlers
52
53 //extern void default_SampleStatistic_error_handler (const char *);
54 //extern one_arg_error_handler_t SampleStatistic_error_handler;
55
56 //extern one_arg_error_handler_t
57 //set_SampleStatistic_error_handler (one_arg_error_handler_t f);
58
59 inline SampleStatistic::SampleStatistic ()
60 {
61   reset ();
62 }
63 inline int SampleStatistic::samples () const
64 {
65   return (n);
66 }
67 inline double SampleStatistic::min () const
68 {
69   return (minValue);
70 }
71 inline double SampleStatistic::max () const
72 {
73   return (maxValue);
74 }
75
76 inline SampleStatistic::~SampleStatistic ()
77 {
78 }
79
80 #endif