]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliCaloFitResults.h
Updates to AddTask macro from Chris
[u/mrichter/AliRoot.git] / EMCAL / AliCaloFitResults.h
CommitLineData
d655d7dd 1// -*- mode: c++ -*-
57839add 2#ifndef ALICALOFITRESULTS_H
3#define ALICALOFITRESULTS_H
d655d7dd 4/**************************************************************************
5 * This file is property of and copyright by *
6 * the Relativistic Heavy Ion Group (RHIG), Yale University, US, 2009 *
7 * *
8 * Primary Author: Per Thomas Hille <p.t.hille@fys.uio.no> *
9 * *
10 * Contributors are mentioned in the code where appropriate. *
11 * Please report bugs to p.t.hille@fys.uio.no *
12 * *
13 * Permission to use, copy, modify and distribute this software and its *
14 * documentation strictly for non-commercial purposes is hereby granted *
15 * without fee, provided that the above copyright notice appears in all *
16 * copies and that both the copyright notice and this permission notice *
17 * appear in the supporting documentation. The authors make no claims *
18 * about the suitability of this software for any purpose. It is *
19 * provided "as is" without express or implied warranty. *
20 **************************************************************************/
21
d655d7dd 22#include "Rtypes.h"
f57baa2d 23#include "AliCaloFitSubarray.h"
168c7b3c 24#include "AliCaloConstants.h"
25
57839add 26class AliCaloFitResults
d655d7dd 27{
28 public:
168c7b3c 29 // enum kReturnCode {kFitPar=1, kDummy=-1, kCrude=-9, kNoFit=-99, kInvalid=-9999};// possible return values
507751ce 30 // kFitPar: method fit or parametrization was used
31 // kDummy: just a filler parameter, if e.g. chi2 not available
32 // kCrude: maximum was used
33 // kNoFit: maximum was used, exception handling for fit invoked
34 // kInvalid: could not even look for maximum
f57baa2d 35
92d9f317 36
f57baa2d 37 explicit AliCaloFitResults( const Int_t maxSig,
38 const Float_t ped,
39 const Short_t fitStatus,
40 const Float_t amp,
92d9f317 41 const double time,
507751ce 42 const Int_t maxTimebin,
15cdd9b3 43 // const Float_t chi,
44 const Float_t chi,
f57baa2d 45 const Int_t ndf,
46 const Int_t minSig,
6d1befcf 47 const AliCaloFitSubarray fitSubarray );
92d9f317 48
f57baa2d 49
57839add 50 explicit AliCaloFitResults( const Int_t maxSig,
51 const Float_t ped,
52 const Short_t fitStatus,
53 const Float_t amp,
92d9f317 54 const double time,
507751ce 55 const Int_t maxTimebin,
15cdd9b3 56 // const Float_t chi,
57839add 57 const Float_t chi,
58 const Int_t ndf,
168c7b3c 59 const Int_t minSig = Ret::kDummy);
60 // const Int_t minSig = CaloConstants::ReturnCodes::kDummy);
61
d655d7dd 62
507751ce 63 // shorter interface when no fit is done
92d9f317 64
65
507751ce 66 explicit AliCaloFitResults( const Int_t maxSig,
67 const Float_t ped,
68 const Short_t fitStatus,
69 const Float_t amp,
70 const Int_t maxTimebin);
92d9f317 71
507751ce 72
73 // minimum interface
57839add 74 explicit AliCaloFitResults( const Int_t maxSig, const Int_t minSig );
d655d7dd 75
6d1befcf 76 AliCaloFitResults();
57839add 77 virtual ~AliCaloFitResults();
15cdd9b3 78 UShort_t GetMaxSig() const { return fMaxSig;};
d655d7dd 79 Float_t GetPed() const { return fPed;};
15cdd9b3 80 UShort_t GetMinSig() const { return fMinSig;};
57839add 81 Int_t GetStatus() const { return fStatus;};
d655d7dd 82 Float_t GetAmp() const { return fAmpSig; };
507751ce 83 Float_t GetTof() const { return fTime; };
92d9f317 84 double GetTime() const { return fTime; };
507751ce 85 Int_t GetMaxTimebin() const { return fMaxTimebin; };
947c8e28 86 Float_t GetChi2() const { return fChi2Sig;};
15cdd9b3 87 UShort_t GetNdf() const { return fNdfSig; };
f57baa2d 88 AliCaloFitSubarray GetFitSubarray() const { return fFitSubarray; };
92d9f317 89 void SetTime(Float_t time ) { fTime = time; };
90 void SetAmp(Float_t amp ) { fAmpSig = amp; };
91
d655d7dd 92 private:
6d1befcf 93 // AliCaloFitResults();
15cdd9b3 94 UShort_t fMaxSig; //Maximum sample value ( 0 - 1023 )
d655d7dd 95 Float_t fPed; //Pedestal
6d1befcf 96 Int_t fStatus; //Sucess or failure of fitting pocedure
d655d7dd 97 Float_t fAmpSig; //Amplitude in entities of ADC counts
92d9f317 98 double fTime; //peak/max time of signal in entities of sample intervals
6d1befcf 99 Int_t fMaxTimebin; //timebin with maximum ADC value
d655d7dd 100 Float_t fChi2Sig; //Chi Square of fit
15cdd9b3 101 UShort_t fNdfSig; //Number of degrees of freedom of fit
102 UShort_t fMinSig; //Pedestal
f57baa2d 103 AliCaloFitSubarray fFitSubarray; // info on time-bin array used for the fitting
d655d7dd 104};
105
106#endif