Belle II Software development
TrgEclFAMFit.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef TRGECLFAMFIT_H
10#define TRGECLFAMFIT_H
11
12#include <TObject.h>
13#include "trg/ecl/TrgEclMapping.h"
14#include <trg/ecl/TrgEclDataBase.h>
15
16namespace Belle2 {
23 class TrgEclFAMFit : public TObject {
24
25 public:
26
29
31 virtual ~TrgEclFAMFit();
32
34 void setup(int);
36 void save(int);
38 void FAMFit01(std::vector<std::vector<double>>, std::vector<std::vector<double>>);
40 void FAMFit02(std::vector<std::vector<double>>, std::vector<std::vector<double>>);
42 void FAMFit03(std::vector<std::vector<double>>, std::vector<std::vector<double>>);
44 void SetBeamBkgTagFlag(int beambkgtagflag) {_BeamBkgTag = beambkgtagflag;}
46 void SetAnaTagFlag(int anatagflag) {_AnaTag = anatagflag;}
48 void SetThreshold(const std::vector<int>& threshold)
49 {
50 Threshold = threshold;
51 };
53 void SetBeamBkgTag();
54
56 std::vector<std::vector<double>> GetFitEnergy() {return TCFitEnergy;}
58 std::vector<std::vector<double>> GetFitTiming() {return TCFitTiming;}
60 std::vector<std::vector<int>> GetBeamBkgTag() {return BeamBkgTag;}
61
62
63
64 private:
66 std::vector<std::vector<double>> TCFitEnergy;
68 std::vector<std::vector<double>> TCFitTiming;
70 std::vector<std::vector<int>> BeamBkgTag;
72 std::vector<std::vector<double>> TCRawEnergy;
74 std::vector<std::vector<double>> TCRawTiming;
75
76
81
83 std::vector<std::vector<double>> CoeffSigPDF0;
85 std::vector<std::vector<double>> CoeffSigPDF1;
87 std::vector<std::vector<double>> CoeffNoise31;
89 std::vector<std::vector<double>> CoeffNoise32;
91 std::vector<std::vector<double>> CoeffNoise33;
93 std::vector<double> TCLatency;
94
100 std::vector<int> Threshold;
103
104 };
106} // end namespace Belle2
107
108#endif
class TrgEclDataBase;
int _BeamBkgTag
Add beambkg.
Definition: TrgEclFAMFit.h:96
std::vector< std::vector< double > > CoeffSigPDF1
Coeffisients of signal PDF1.
Definition: TrgEclFAMFit.h:85
void save(int)
save fitting result into tables
std::vector< std::vector< int > > BeamBkgTag
fit timing
Definition: TrgEclFAMFit.h:70
int _AnaTag
Fill Analysis table.
Definition: TrgEclFAMFit.h:98
void setup(int)
setup fam module
Definition: TrgEclFAMFit.cc:70
std::vector< std::vector< double > > CoeffNoise32
Coeffisient of noise 2.
Definition: TrgEclFAMFit.h:89
void SetBeamBkgTagFlag(int beambkgtagflag)
Set Beam Background Tag flag.
Definition: TrgEclFAMFit.h:44
TrgEclFAMFit()
Constructor.
Definition: TrgEclFAMFit.cc:28
std::vector< std::vector< int > > GetBeamBkgTag()
Get Background Tag of TC Hit.
Definition: TrgEclFAMFit.h:60
std::vector< std::vector< double > > TCFitEnergy
fit energy
Definition: TrgEclFAMFit.h:66
std::vector< std::vector< double > > CoeffSigPDF0
Coeffisients of signal PDF0
Definition: TrgEclFAMFit.h:83
std::vector< std::vector< double > > TCFitTiming
fit timing
Definition: TrgEclFAMFit.h:68
TrgEclDataBase * _DataBase
Object of DataBase.
Definition: TrgEclFAMFit.h:80
std::vector< std::vector< double > > TCRawTiming
Raw timing.
Definition: TrgEclFAMFit.h:74
std::vector< std::vector< double > > CoeffNoise31
Coeffisients of noise 1.
Definition: TrgEclFAMFit.h:87
void SetBeamBkgTag()
Set Beam Background Tag.
virtual ~TrgEclFAMFit()
Destructor.
Definition: TrgEclFAMFit.cc:59
std::vector< std::vector< double > > CoeffNoise33
Coeffisient of noise 3
Definition: TrgEclFAMFit.h:91
std::vector< double > TCLatency
TC Latency.
Definition: TrgEclFAMFit.h:93
std::vector< std::vector< double > > TCRawEnergy
Raw energy.
Definition: TrgEclFAMFit.h:72
std::vector< std::vector< double > > GetFitEnergy()
Get TC Energy.
Definition: TrgEclFAMFit.h:56
void FAMFit02(std::vector< std::vector< double > >, std::vector< std::vector< double > >)
function for backup 1
void FAMFit01(std::vector< std::vector< double > >, std::vector< std::vector< double > >)
function for fitting
Definition: TrgEclFAMFit.cc:85
int EventId
Fill Analysis table.
Definition: TrgEclFAMFit.h:102
std::vector< std::vector< double > > GetFitTiming()
Get TC Timing.
Definition: TrgEclFAMFit.h:58
void SetAnaTagFlag(int anatagflag)
Set flag for saving analysis table.
Definition: TrgEclFAMFit.h:46
void FAMFit03(std::vector< std::vector< double > >, std::vector< std::vector< double > >)
function for backup2
std::vector< int > Threshold
Threshold (MeV)
Definition: TrgEclFAMFit.h:100
void SetThreshold(const std::vector< int > &threshold)
Set Threshold.
Definition: TrgEclFAMFit.h:48
TrgEclMapping * _TCMap
Object of TC Mapping.
Definition: TrgEclFAMFit.h:78
A class of TC Mapping.
Definition: TrgEclMapping.h:26
Abstract base class for different kinds of events.