]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STAT/TKDPDF.h
From Philippe & Laurent: new variant of MUON visualization.
[u/mrichter/AliRoot.git] / STAT / TKDPDF.h
index 15f71a9971ac6c1b7a993e497cda589b62a0e44e..257098e980a9421defd5aa4a45398a7095d34193 100644 (file)
@@ -1,14 +1,14 @@
 #ifndef ROOT_TKDPDF
 #define ROOT_TKDPDF
 
-#ifndef ROOT_TKDTree
-#include "TKDTree.h"
-#endif
-
 #ifndef ROOT_TKDInterpolatorBase
 #include "TKDInterpolatorBase.h"
 #endif
 
+#ifndef ROOT_TKDTree
+#include "TKDTree.h"
+#endif
+
 // Non parametric interpolation class based on local polinomial regression.
 // The class can be used to approximate PDF together with TKDTree or for
 // general regression when the data points are given.
@@ -20,39 +20,39 @@ class TLinearFitter;
 class TKDPDF : public TKDTreeIF, public TKDInterpolatorBase
 {
 public:
-       TKDPDF();
-       TKDPDF(TTree *t, const Char_t *var, const Char_t *cut = 0, UInt_t bsize = 100, Long64_t nentries = 1000000000, Long64_t firstentry = 0);
-       TKDPDF(Int_t npoints, Int_t ndim, UInt_t bsize, Float_t **data);
-       ~TKDPDF();
+  TKDPDF();
+  TKDPDF(TTree *t, const Char_t *var, const Char_t *cut = 0, UInt_t bsize = 100, Long64_t nentries = 1000000000, Long64_t firstentry = 0);
+  TKDPDF(Int_t npoints, Int_t ndim, UInt_t bsize, Float_t **data);
+  ~TKDPDF();
 
-       inline Bool_t     GetDataPoint(Int_t n, Float_t *p) const;
-       inline Int_t      GetNodeIndex(const Float_t *p);
-                                       void       DrawNode(Int_t tnode, UInt_t ax1=0, UInt_t ax2=1);
+  inline Bool_t GetDataPoint(Int_t n, Float_t *p) const;
+  inline Int_t  GetNodeIndex(const Float_t *p);
+  void          DrawNode(Int_t tnode, UInt_t ax1=0, UInt_t ax2=1);
 
 private:
-       TKDPDF(const TKDPDF &);
-       TKDPDF& operator=(const TKDPDF &);
-               void       Build();
+  TKDPDF(const TKDPDF &);
+  TKDPDF& operator=(const TKDPDF &);
+  void     Build(Int_t ndim = 0);
 
-                                       
-       ClassDef(TKDPDF, 1)   // data interpolator based on KD tree
+          
+  ClassDef(TKDPDF, 1)   // data interpolator based on KD tree
 };
 
 
 //__________________________________________________________________
 Bool_t TKDPDF::GetDataPoint(Int_t n, Float_t *p) const
 {
-       if(n < 0 || n >= fNpoints) return kFALSE;
-       if(!fData) return kFALSE;
-               
-       for(int i=0; i<fNDim; i++) p[i] = fData[i][n];
-       return kTRUE;
+  if(n < 0 || n >= fNPoints) return kFALSE;
+  if(!fData) return kFALSE;
+    
+  for(int i=0; i<fNDim; i++) p[i] = fData[i][n];
+  return kTRUE;
 }
 
 //__________________________________________________________________
 Int_t  TKDPDF::GetNodeIndex(const Float_t *p)
 {
-       return FindNode(p) - fNnodes;
+  return FindNode(p) - fNNodes;
 }
 
 #endif