CbmRoot
Loading...
Searching...
No Matches
CbmRichGeoTestOpt.h
Go to the documentation of this file.
1/* Copyright (C) 2019 UGiessen/JINR-LIT, Giessen/Dubna
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Semen Lebedev [committer] */
4
11#ifndef CBM_RICH_GEO_TEST_OPT
12#define CBM_RICH_GEO_TEST_OPT
13
14#include "CbmHistManager.h"
15#include "TFile.h"
16#include "TObject.h"
17
18using namespace std;
19
29
38
39class CbmRichGeoTestOpt : public TObject {
40 public:
45
49 virtual ~CbmRichGeoTestOpt();
50
51 void SetFilePathes(vector<string> geoTestPathes, vector<string> geoTestOmega3Pathes,
52 vector<string> geoTestOmega8Pathes, vector<string> urqmdTestPathes, vector<string> recoQaBoxPathes,
53 vector<string> recoQaUrqmdPathes);
54
55 void Draw(Option_t* option = "");
56
57 string GetFilePath(CbmRichGeoTestOptFileEnum fileType, int iFile);
58 int GetNofFiles();
60
61 pair<double, double> H1MeanRms(CbmRichGeoTestOptFileEnum fileType, int iFile, const string& histName);
62 pair<double, double> H2ProjYMeanRms(CbmRichGeoTestOptFileEnum fileType, int iFile, const string& histName);
63 double HEntries(CbmRichGeoTestOptFileEnum fileEnum, int iFile, const string& histName);
64
65 void DrawMeanRms(CbmRichGeoTestOptFileEnum fileEnum, const string& histName, CbmRichGeoTestOptHistEnum histEnum,
66 const string& titleY, double minY, double maxY, int nofParts, int nofFilesPart);
67 void DrawMeanEff(CbmRichGeoTestOptFileEnum fileEnum, const string& histName1, const string& histName2,
68 const string& titleY, double minY, double maxY, int nofParts, int nofFilesPart, double effCoeff);
69 void DrawLines(bool drawCamTilt, bool drawCamY, double minY, double maxY);
70 void DrawManyH1(const vector<TH1*>& hist, const vector<string>& legend, double minY, double maxY);
71
72 void DrawMeanRms2D(CbmRichGeoTestOptFileEnum fileEnum, const string& histName, CbmRichGeoTestOptHistEnum histEnum,
73 const string& titleZ, double minZ, double maxZ, int precision);
74
75 void DrawMeanEff2D(CbmRichGeoTestOptFileEnum fileEnum, const string& histName1, const string& histName2,
76 const string& titleZ, double minZ, double maxZ, double effCoeff, int precision);
77
78 void DrawTextLabelsH2(TH2* h, int precision);
79
80 void DrawReferenceLineH1(double value);
81
82 void DrawReferenceBoxH2(double centerX, double centerY, double widthX, double widthY);
83
84 void SetOutputDir(const string& outDir) { fOutputDir = outDir; }
85
86 void SetReferenceInd(int refInd) { fReferenceInd = refInd; }
87
88 void SetDrawReference(bool drawRef) { fDrawReference = drawRef; }
89
90 private:
91 vector<string> fGeoTestBoxPathes;
92 vector<string> fGeoTestOmega3Pathes;
93 vector<string> fGeoTestOmega8Pathes;
94 vector<string> fUrqmdTestPathes;
95 vector<string> fRecoQaBoxPathes;
96 vector<string> fRecoQaUrqmdPathes;
97
100
102
104
105 ClassDef(CbmRichGeoTestOpt, 1)
106};
107
108#endif
Histogram manager.
CbmRichGeoTestOptFileEnum
@ kGeoTestOmega3File
@ kRecoQaBoxFile
@ kUrqmdTestFile
@ kRecoQaUrqmdFile
@ kGeoTestBoxFile
@ kGeoTestOmega8File
CbmRichGeoTestOptHistEnum
@ kH2RmsHist
@ kHEntriesHist
@ kH1RmsHist
@ kH1MeanHist
@ kH2MeanHist
Generates beam ions for transport simulation.
Histogram manager.
void DrawMeanRms(CbmRichGeoTestOptFileEnum fileEnum, const string &histName, CbmRichGeoTestOptHistEnum histEnum, const string &titleY, double minY, double maxY, int nofParts, int nofFilesPart)
void SetFilePathes(vector< string > geoTestPathes, vector< string > geoTestOmega3Pathes, vector< string > geoTestOmega8Pathes, vector< string > urqmdTestPathes, vector< string > recoQaBoxPathes, vector< string > recoQaUrqmdPathes)
CbmHistManager * fHM
vector< string > fGeoTestBoxPathes
void DrawReferenceLineH1(double value)
void Draw(Option_t *option="")
string GetFilePath(CbmRichGeoTestOptFileEnum fileType, int iFile)
void SetDrawReference(bool drawRef)
vector< string > fUrqmdTestPathes
double HEntries(CbmRichGeoTestOptFileEnum fileEnum, int iFile, const string &histName)
void DrawTextLabelsH2(TH2 *h, int precision)
void SetOutputDir(const string &outDir)
CbmRichGeoTestOpt()
Constructor.
pair< double, double > H2ProjYMeanRms(CbmRichGeoTestOptFileEnum fileType, int iFile, const string &histName)
string GetFileEnumName(CbmRichGeoTestOptFileEnum fileEnum)
vector< string > fRecoQaBoxPathes
void DrawLines(bool drawCamTilt, bool drawCamY, double minY, double maxY)
virtual ~CbmRichGeoTestOpt()
Destructor.
void DrawMeanEff2D(CbmRichGeoTestOptFileEnum fileEnum, const string &histName1, const string &histName2, const string &titleZ, double minZ, double maxZ, double effCoeff, int precision)
void DrawMeanRms2D(CbmRichGeoTestOptFileEnum fileEnum, const string &histName, CbmRichGeoTestOptHistEnum histEnum, const string &titleZ, double minZ, double maxZ, int precision)
vector< string > fRecoQaUrqmdPathes
vector< string > fGeoTestOmega3Pathes
void DrawMeanEff(CbmRichGeoTestOptFileEnum fileEnum, const string &histName1, const string &histName2, const string &titleY, double minY, double maxY, int nofParts, int nofFilesPart, double effCoeff)
void DrawManyH1(const vector< TH1 * > &hist, const vector< string > &legend, double minY, double maxY)
pair< double, double > H1MeanRms(CbmRichGeoTestOptFileEnum fileType, int iFile, const string &histName)
void DrawReferenceBoxH2(double centerX, double centerY, double widthX, double widthY)
vector< string > fGeoTestOmega8Pathes
void SetReferenceInd(int refInd)
Hash for CbmL1LinkKey.