CGEM BOSS 6.6.5.f
BESIII Offline Software System
Loading...
Searching...
No Matches
Tof/tofcalgsec/tofcalgsec-00-02-08/tofcalgsec/TofCalibFit.h
Go to the documentation of this file.
1#ifndef TOFCALIBFIT_H
2#define TOFCALIBFIT_H
3
4#include "tofcalgsec/TofDataSet.h"
5#include "CLHEP/Matrix/Vector.h"
6#include "TH1F.h"
7#include "TGraph.h"
8#include "TGraphErrors.h"
9#include "TCanvas.h"
10
11using namespace std;
12using namespace CLHEP;
13
14const double zbegin = -115.0;
15const double zend = 115.0;
16const double barrelRadius = 87.05;
17
18const double rbegin = 53.5;
19const double rend = 80.5;
20
21const int nBarrelCommon = 4; // number of calib_barrel_common.txt
22
23class TofCalibFit{
24 public:
25 TofCalibFit( bool isbarrel, const int npar );
27
28 public:
29 const string& name() const { return m_name; }
30 virtual void calculate( RecordSet*& data, unsigned int icounter ) = 0;
31
32 void fillTxt( const char* file );
33 void fillRoot( const char* file );
34
35 public:
36 HepVector tcorrelation() { return X; }
37 void setTCorrelation( HepVector tc ) { m_tcorrelation = tc; }
38
39 protected:
40 int m_npar;
41
42 unsigned int nKind;
43 unsigned int nBinPerCounter;
44
45 unsigned int nHistPerCounter;
46 unsigned int nCanvasPerCounter;
47 std::vector<unsigned int> nGraphPerCanvasPerCounter;
48 unsigned int nHistogram;
49 unsigned int nCanvas;
50 std::vector<unsigned int> nGraphPerCanvas;
51
52 string m_name;
53 HepVector X;
54
55 std::vector<TH1F*> m_histograms;
56 std::vector<TGraphErrors*> m_graphs;
57 std::vector<HepVector> m_result;
58 // std::vector<HepVector> m_fitresult;
59
60 std::vector<string> CanvasPerCounterName;
61 std::vector<string> CanvasName;
62
63 HepVector m_tcorrelation;
64
65 private:
66 unsigned int nCounter;
67};
68
69#endif
TTree * data
std::vector< Record * > RecordSet
virtual void calculate(RecordSet *&data, unsigned int icounter)=0
void fillRoot(const char *file)
TofCalibFit(bool isbarrel, const int npar)
void fillTxt(const char *file)
std::vector< unsigned int > nGraphPerCanvasPerCounter