VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
averager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999-2000 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: averager.h,v $ $Revision: 1.10 $ $State: Exp $
7 *******************************************************************************/
8 #ifndef averager_H_
9 #define averager_H_
10 
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include <vector>
16 
25 #include "vrfutil/vrfutilDefines.h"
27 {
28 public:
30  DtAverager();
31 
32  DtAverager(unsigned int maxPopulation);
33 
35  DtAverager(const DtAverager& orig);
36 
38  DtAverager& operator=(const DtAverager& orig);
39 
41  virtual ~DtAverager();
42 
47  virtual double sampleMean() const;
48 
53  virtual double sampleMedian() const;
54 
58  virtual double sampleStandardDeviation() const;
59 
64  virtual double sampleMinimum() const;
65 
70  virtual double sampleMaximum() const;
71 
73  virtual void addSample(double sample);
74 
78  virtual double lastSample() const;
79 
82  virtual unsigned int maxPopulationSize() const;
83 
85  virtual void setMaxPopulationSize(unsigned int maxPopulation);
86 
88  virtual void invalidatePopulation();
89 
91  virtual std::vector<double>& samples();
92  virtual const std::vector<double>& samples() const;
93 
95  virtual unsigned int currentSampleIndex() const;
96 
98  virtual unsigned int currentPopulationSize() const;
99 
100 protected:
103  virtual void invalidateStatistics();
104 
106  virtual void validateStatistics();
107 
108  void resetStatistics();
109 
110 private:
111 
112  mutable double mySampleMean;
113  mutable bool mySampleMeanValid;
114 
115  mutable double mySampleMedian;
116  mutable bool mySampleMedianValid;
117 
120 
121  mutable double mySampleMaximum;
122  mutable bool mySampleMaximumValid;
123 
124  mutable double mySampleMinimum;
125  mutable bool mySampleMinimumValid;
126 
128  unsigned int myCurrentSampleIndex;
129 
130  mutable std::vector<double> mySamples;
131  mutable std::vector<double> mySortedSamples;
132 };
133 
134 #endif
class DtAverager:
Definition: averager.h:26
std::vector< double > mySamples
Definition: averager.h:130
bool mySampleStandardDeviationValid
Definition: averager.h:119
unsigned int myCurrentSampleIndex
Definition: averager.h:128
double mySampleStandardDeviation
Definition: averager.h:118
bool mySampleMaximumValid
Definition: averager.h:122
unsigned int myCurrentPopulationSize
Definition: averager.h:127
double mySampleMean
Definition: averager.h:112
double mySampleMedian
Definition: averager.h:115
double mySampleMinimum
Definition: averager.h:124
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
double mySampleMaximum
Definition: averager.h:121
bool mySampleMinimumValid
Definition: averager.h:125
bool mySampleMedianValid
Definition: averager.h:116
std::vector< double > mySortedSamples
Definition: averager.h:131
bool mySampleMeanValid
Definition: averager.h:113

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)