CMS 3D CMS Logo

MultiGaussianState1D.h
Go to the documentation of this file.
1 #ifndef MultiGaussianState1D_H_
2 #define MultiGaussianState1D_H_
3 
5 
6 #include <vector>
7 
13 public:
14  typedef std::vector<SingleGaussianState1D> SingleState1dContainer;
15 
16 public:
18 
19  MultiGaussianState1D(const SingleState1dContainer& stateV) : theComponents(stateV), theCombinedStateUp2Date(false) {}
20 
22 
24  double weight() const;
26  double mean() const;
28  double variance() const;
30  const SingleState1dContainer& components() const { return theComponents; }
31 
32  // protected:
33 private:
35  void checkCombinedState() const;
36 
37  // should become a vector of pointers to const SingleState
38  const SingleState1dContainer theComponents;
41 };
42 
43 #endif
SingleGaussianState1D theCombinedState
double mean() const
combined mean
double weight() const
combined weight
std::vector< SingleGaussianState1D > SingleState1dContainer
const SingleState1dContainer theComponents
MultiGaussianState1D(const SingleState1dContainer &stateV)
double variance() const
combined variance
const SingleState1dContainer & components() const
access to components
void checkCombinedState() const
calculation of the combined state (on demand)