]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STAT/AliTMinuitToolkit.h
Xcode project file addded to .gitignore
[u/mrichter/AliRoot.git] / STAT / AliTMinuitToolkit.h
index 377ff9a12559e2cdc075d3bb0faad7890ccfd12d..2ecade12d913c5074918d708213c3f7f1167490d 100644 (file)
@@ -1,54 +1,49 @@
-#ifndef AliTMINUITTOOLKIT_H
-#define AliTMINUITTOOLKIT_H
+#ifndef ALITMINUITTOOLKIT_H
+#define ALITMINUITTOOLKIT_H
 
 
 #include <TNamed.h>
-#include <TVirtualFitter.h>
-#include <TH1F.h>
-#include <TH2F.h>
-#include <TF1.h>
-#include <TFormula.h>
-#include <TVectorD.h>
-#include <TMatrixD.h>
-#include <TMath.h>
-#include <TString.h>
-
+class TH1F;
+class TH2F;
+class TFormula;
+#include <TVectorDfwd.h>
+#include <TMatrixDfwd.h>
 
 class AliTMinuitToolkit: public TNamed{
+public:
   //
   //
   //
-public:
   AliTMinuitToolkit();
   virtual ~AliTMinuitToolkit();
   
-  void FitHistogram(TH1F * his);
-  void FitHistogram(TH2F * his);
-  void SetInitialParam(TVectorD *param) { fParam=param;};
-  void SetParamLimits(TMatrixD *paramLimits) { fParamLimits=paramLimits;};
+  void FitHistogram(TH1F *const his);
+  void FitHistogram(TH2F *const his);
+  void SetInitialParam(TVectorD *const param) { fParam=param;};
+  void SetParamLimits(TMatrixD *const paramLimits) { fParamLimits=paramLimits;};
   //
-  void SetFitFunction(TFormula * formula) {fFormula=formula;};
-  void SetWeightFunction(TFormula * weightFunction) {fWeightFunction=weightFunction;};
-  void SetWeightFunction(Char_t * name, Float_t param1, Float_t param2 = 0.1);
-  void SetFitAlgorithm(Char_t * name) {fFitAlgorithm=name;};
+  void SetFitFunction(TFormula *const formula) {fFormula=formula;};
+  void SetWeightFunction(TFormula *const weightFunction) {fWeightFunction=weightFunction;};
+  void SetWeightFunction(const Char_t *name, Float_t param1, Float_t param2 = 0.1);
+  void SetFitAlgorithm(Char_t *const name) {fFitAlgorithm=name;};
   void SetMaxCalls(Int_t calls) {fMaxCalls = calls;};
   void SetTolerance(Double_t tol) {fPrecision = tol;};
-  void SetPoints(TMatrixD * points) {fPoints = points;};
-  void SetWeights(TVectorD * weights) {fWeights = weights;};
-  void Test();
-  static void FitterFCN(int &npar, double  *dummy, double &fchisq, double *gin, int iflag);
+  void SetPoints(TMatrixD *const points) {fPoints = points;};
+  void SetWeights(TVectorD *const weights) {fWeights = weights;};
+  static void Test();
+  static void FitterFCN(int &npar, double *dummy, double &fchisq, double *gin, int iflag);
   void Fit();
   void EnableRobust(Bool_t b) {fUseRobust = b;};
   void EnableRobust(Bool_t b, Double_t sigma) {fUseRobust = b; fExpectedSigma = sigma;}; 
   //
-  TMatrixD * GetPoints() {return fPoints;};
-  TVectorD * GetWeights() {return fWeights;};
-  TFormula * GetFormula() {return fFormula;};
-  TVectorD * GetParameters() {return fParam;};
-  TFormula * GetWeightFunction() {return fWeightFunction;};
-  TMatrixD * GetCovarianceMatrix() {return fCovar;};
-  Bool_t     GetStatus() {return fUseRobust;};
-  Double_t   GetExpectedSigma() {return fExpectedSigma;};
+  TMatrixD * GetPoints() const {return fPoints;};
+  TVectorD * GetWeights() const {return fWeights;};
+  TFormula * GetFormula() const {return fFormula;};
+  TVectorD * GetParameters() const {return fParam;};
+  TFormula * GetWeightFunction() const {return fWeightFunction;};
+  TMatrixD * GetCovarianceMatrix() const {return fCovar;};
+  Bool_t     GetStatus() const {return fUseRobust;};
+  Double_t   GetExpectedSigma() const {return fExpectedSigma;};
  
 private:
   //
@@ -57,7 +52,7 @@ private:
   //
   TFormula        * fFormula;            // formula of the fitted function
   TFormula        * fWeightFunction;     // weight function, must be defined between 0 and 1
-  Char_t          * fFitAlgorithm;       // fit algorithm for TMinuit: migrad, simplex, ...
+  TString          fFitAlgorithm;       // fit algorithm for TMinuit: migrad, simplex, ...
   //
   //
   TMatrixD        * fPoints;             // fitted points