1 #ifndef ALIDIELECTRONSIGNALFUNC_H
2 #define ALIDIELECTRONSIGNALFUNC_H
4 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 //#############################################################
9 //# Class AliDielectronSignalFunc #
12 //# Anton Andronic, GSI / A.Andronic@gsi.de #
13 //# Ionut C. Arsene, GSI / I.C.Arsene@gsi.de #
14 //# Julian Book, Uni Ffm / Julian.Book@cern.ch #
15 //# Frederick Kramer, Uni Ffm, / Frederick.Kramer@cern.ch #
16 //# Magnus Mager, CERN / Magnus.Mager@cern.ch #
17 //# WooJin J. Park, GSI / W.J.Park@gsi.de #
18 //# Jens Wiechula, Uni HD / Jens.Wiechula@cern.ch #
20 //#############################################################
25 #include "AliDielectronSignalBase.h"
27 class AliDielectronSignalFunc : public AliDielectronSignalBase {
29 AliDielectronSignalFunc();
30 AliDielectronSignalFunc(const char*name, const char* title);
32 virtual ~AliDielectronSignalFunc();
34 void Process(TH1 * const hist);
35 virtual void Process(TObjArray * const arrhist);
37 void SetFunctions(TF1 * const sig, TF1 * const back, TF1 * const combined, Int_t parM=-1, Int_t parMres=-1);
39 void SetFitOption(const char* opt) {fFitOpt=opt;}
40 void SetDefaults(Int_t type);
41 void SetFitRange(Double_t min, Double_t max) {fFitMin=min;fFitMax=max;}
43 void SetUseIntegral(Bool_t integral=kTRUE) { fUseIntegral=integral; }
45 const char* GetFitOption() const { return fFitOpt.Data(); }
46 TF1* GetSignalFunction() const { return fSignal; }
47 TF1* GetBackgroundFunction() const { return fBackground; }
48 TF1* GetCombinedFunction() const { return fSigBack; }
50 Double_t GetFitMin() const { return fFitMin; }
51 Double_t GetFitMax() const { return fFitMax; }
53 virtual void Draw(const Option_t* option = "");
56 TF1 *fSignal; // Function for the signal description
57 TF1 *fBackground; // Function for the background description
58 TF1 *fSigBack; // Combined function signal plus background
59 TVectorD fVInitParam; // initial fit parameters
60 TString fFitOpt; // fit option used
62 Bool_t fUseIntegral; // use integral instead of bin counts
64 Double_t fFitMin; // fit range min
65 Double_t fFitMax; // fit range max
67 Int_t fParM; // Paramter which defines the mass
68 Int_t fParMres; // Paramter which defines the resolution of the mass
70 TH1 *fSignalHist; // Current signal histogram
72 AliDielectronSignalFunc(const AliDielectronSignalFunc &c);
73 AliDielectronSignalFunc &operator=(const AliDielectronSignalFunc &c);
75 ClassDef(AliDielectronSignalFunc,1) // Dielectron SignalFunc