]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - RALICE/AliSample.h
skip AliCaloAltroMapping delete at the end to avoid segmentation violation on exit...
[u/mrichter/AliRoot.git] / RALICE / AliSample.h
index d03ee40e3776efd40afa322f102a5de27ebedec4..f1574277692a890eea3d75d36470fb26dc7ceae3 100644 (file)
@@ -6,9 +6,10 @@
 // $Id$
 
 #include <math.h>
-#include "Riostream.h"
 
 #include "Rtypes.h"
+#include "TArrayF.h"
+#include "TH1.h"
  
 class AliSample
 {
@@ -22,17 +23,25 @@ class AliSample
   void Remove(Float_t x, Float_t y);            // Remove value from 2-dim. sample
   void Enter(Float_t x, Float_t y, Float_t z);  // Enter value for 3-dim. sample
   void Remove(Float_t x, Float_t y, Float_t z); // Remove value from 3-dim. sample
-  Int_t GetDimension();                         // Provide dimension of the sample
-  Int_t GetN();                                 // Provide the number of entries
-  Float_t GetSum(Int_t i);                      // Provide sum for i-th variable
-  Float_t GetMean(Int_t i);                     // Provide mean for i-th variable
-  Float_t GetVar(Int_t i);                      // Provide variance for i-th variable
-  Float_t GetSigma(Int_t i);                    // Standard deviation for i-th variable
-  Float_t GetCov(Int_t i, Int_t j);             // Covariance for i-th and j-th variable
-  Float_t GetCor(Int_t i, Int_t j);             // Correlation for i-th and j-th variable
-  void Info();                                  // Stat. info for the complete sample
-  void Info(Int_t i);                           // Stat. info for the i-th variable
-  void Info(Int_t i, Int_t j);                  // Stat. info for i-th and j-th variable
+  Int_t GetDimension() const;                   // Provide dimension of the sample
+  Int_t GetN() const;                           // Provide the number of entries
+  Float_t GetSum(Int_t i) const;                // Provide sum for i-th variable
+  Float_t GetMean(Int_t i) const;               // Provide mean for i-th variable
+  Float_t GetVar(Int_t i) const;                // Provide variance for i-th variable
+  Float_t GetSigma(Int_t i) const;              // Standard deviation for i-th variable
+  Float_t GetCov(Int_t i, Int_t j) const;       // Covariance for i-th and j-th variable
+  Float_t GetCor(Int_t i, Int_t j) const;       // Correlation for i-th and j-th variable
+  Float_t GetMedian(Int_t i);                   // Provide median for i-th variable
+  Float_t GetSpread(Int_t i);                   // Provide spread w.r.t. the median for i-th variable
+  Float_t GetMinimum(Int_t i) const;            // Provide the minimum value for i-th variable
+  Float_t GetMaximum(Int_t i) const;            // Provide the maximum value for i-th variable
+  void Data();                                  // Stat. info for the complete sample
+  void Data(Int_t i);                           // Stat. info for the i-th variable
+  void Data(Int_t i, Int_t j) const;            // Stat. info for i-th and j-th variable
+  void SetStoreMode(Int_t mode=1);              // Set mode for storage of all entered data
+  Int_t GetStoreMode() const;                   // Provide storage mode of all entered data
+  Double_t GetMedian(TH1* histo,Int_t mode=1) const; // Provide median from the specified 1D histogram
+  Double_t GetSpread(TH1* histo,Int_t mode=1) const; // Provide spread w.r.t. the median from the 1D histo
  
  private:
   Int_t fDim;                      // Dimension of the sample
@@ -47,6 +56,14 @@ class AliSample
   Float_t fSigma[fMaxdim];         // Standard deviation for each variable
   Float_t fCov[fMaxdim][fMaxdim];  // Covariances of pairs of variables
   Float_t fCor[fMaxdim][fMaxdim];  // Correlations of pairs of variables
+  Float_t fMin[fMaxdim];           // Minimum value for each variable
+  Float_t fMax[fMaxdim];           // Maximum value for each variable
+  Int_t fRemove;                   // Flag to indicate that some entry has been removed
+  Int_t fStore;                    // Flag to denote storage of all entered data 
+  TArrayF* fX;                     // Storage array for the 1st variable (e.g. X)
+  TArrayF* fY;                     // Storage array for the 2nd variable (e.g. Y)
+  TArrayF* fZ;                     // Storage array for the 3rd variable (e.g. Z)
+  TArrayF* fArr;                   // Temp. storage array for ordering
 
  ClassDef(AliSample,0) // Statistics tools for various multi-dimensional data samples.
 };