CbmRoot
|
Creates study report for tracking QA. More...
#include <CbmLitTrackingQaStudyReport.h>
Public Member Functions | |
CbmLitTrackingQaStudyReport () | |
Constructor. | |
virtual | ~CbmLitTrackingQaStudyReport () |
Destructor. | |
void | Create (const std::vector< CbmHistManager * > &histManagers, const std::vector< std::string > &studyNames, const std::string &outputDir) |
Main function which creates report data. | |
void | Create (const std::vector< std::string > &fileNames, const std::vector< std::string > &studyNames, const std::string &outputDir) |
Main function which creates report data. | |
const std::vector< CbmHistManager * > & | HM () const |
CbmHistManager * | HM (Int_t index) const |
const std::vector< std::string > & | GetStudyNames () const |
const std::string & | GetStudyName (Int_t index) const |
const CbmReportElement * | R () const |
Accessor to CbmReportElement object. User has to write the report using available tags from CbmReportElement class. | |
std::ostream & | Out () const |
All text output goes to this stream. | |
void | SetReportName (const std::string &name) |
void | SetReportTitle (const std::string &title) |
void | SetOutputDir (const std::string &outputDir) |
const std::string & | GetReportName () const |
const std::string & | GetReportTitle () const |
const std::string & | GetOutputDir () const |
Protected Member Functions | |
void | Create () |
Inherited from CbmLitStudyReport. | |
void | Draw () |
Inherited from CbmLitStudyReport. | |
string | PrintTable (const string &tableName, const string &pattern, string(*rowNameFormatter)(const string &), string(*cellFormatter)(const TH1 *, Int_t)) const |
Return formated string with table of numbers. | |
string | PrintEfficiencyTable (const string &tableName, const string &pattern) const |
Return formated string with table of efficiency numbers. | |
void | DivideHistos (TH1 *histo1, TH1 *histo2, TH1 *histo3, Double_t scale) |
Divide two histograms. | |
void | CalculateEfficiencyHistos () |
Calculate efficiency histograms. | |
void | DrawEfficiencyHistos () |
Main function for drawing efficiency histograms. | |
void | DrawEfficiency (const string &canvasName, const string &histName) |
Draw efficiency histogram. | |
void | DrawMeanEfficiencyLines (const std::vector< TH1 * > &histos, const std::vector< Double_t > &efficiencies) |
Draw mean efficiency lines on histogram. | |
void | DrawAccAndRec (const string &canvasName, const string &histName) |
Draw accepted and reconstructed tracks histograms. | |
Double_t | CalcEfficiency (const TH1 *histRec, const TH1 *histAcc, Double_t scale=1.) const |
Calculate efficiency for two histograms. | |
void | Draw (Option_t *) |
Inherited from TObject. This method is implemented in order to avoid warnings. | |
void | CreateReports () |
Create all available report types. | |
TCanvas * | CreateCanvas (const char *name, const char *title, Int_t ww, Int_t wh) |
Create canvas and put it to vector of TCanvases. Canvases created with this function will be automatically saved to image and printed in the report. | |
void | SaveCanvasesAsImages () const |
Save all canvases to images. | |
void | WriteCanvases () const |
Write canvases to file. | |
void | PrintCanvases () const |
Print images created from canvases in the report. | |
Private Member Functions | |
void | CreateReportElement (ReportType reportType) |
Create concrete CbmReportElement instance based on report type. | |
void | DeleteReportElement () |
Delete report element. Normally should be called at the end of Create function. | |
Private Attributes | |
std::vector< CbmHistManager * > | fHM |
std::vector< std::string > | fStudyNames |
std::string | fReportName |
std::string | fReportTitle |
std::string | fOutputDir |
ReportType | fReportType |
CbmReportElement * | fR |
std::ostream * | fOut |
std::vector< TCanvas * > | fCanvases |
Creates study report for tracking QA.
Generates tracking QA report from a number of results of different simulations and reconstructions. Creates comparison tables. Very useful for studies since all numbers are automatically put in the comparison tables.
Definition at line 33 of file CbmLitTrackingQaStudyReport.h.
CbmLitTrackingQaStudyReport::CbmLitTrackingQaStudyReport | ( | ) |
Constructor.
Definition at line 64 of file CbmLitTrackingQaStudyReport.cxx.
References CbmReport::SetReportName(), and CbmReport::SetReportTitle().
|
virtual |
Destructor.
Definition at line 70 of file CbmLitTrackingQaStudyReport.cxx.
|
protected |
Calculate efficiency for two histograms.
[in] | histReco | Reconstruction histogram. |
[in] | histAcc | Acceptance histogram. |
[in] | scale | Scaling factor for efficiency. |
Definition at line 244 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by DrawEfficiency().
|
protected |
Calculate efficiency histograms.
Definition at line 254 of file CbmLitTrackingQaStudyReport.cxx.
References DivideHistos(), and CbmStudyReport::HM().
Referenced by Draw().
|
protectedvirtual |
Inherited from CbmLitStudyReport.
Implements CbmStudyReport.
Definition at line 72 of file CbmLitTrackingQaStudyReport.cxx.
References CbmReportElement::DocumentBegin(), CbmReportElement::DocumentEnd(), EventNoCellFormatter(), EventNoRowNameFormatter(), NofGhostsCellFormatter(), NofGhostsRowNameFormatter(), NofObjectsCellFormatter(), NofObjectsRowNameFormatter(), CbmReport::Out(), CbmReport::PrintCanvases(), PrintEfficiencyTable(), PrintTable(), CbmReport::R(), CbmReportElement::Title(), TrackHitsCellFormatter(), and TrackHitsRowNameFormatter().
|
inherited |
Main function which creates report data.
Non virtual interface pattern is used here. User always creates simulation report using this public non virtual method. In order to configure concrete report generation class user has to implement protected Create() method and getters for the file names.
[in] | histManagers | Array of histogram managers for which report is created. |
[in] | studyNames | Names of studies. |
[in] | outputDir | name of the output directory. |
Referenced by CbmAnaDielectronReports::CreateStudyReport().
|
inherited |
Main function which creates report data.
Same pattern is used here.
[in] | fileNames | Array of file names for which report is created. |
[in] | studyNames | Names of studies. |
[in] | outputDir | name of the output directory. |
|
protectedinherited |
Create canvas and put it to vector of TCanvases. Canvases created with this function will be automatically saved to image and printed in the report.
Definition at line 94 of file CbmReport.cxx.
References CbmReport::fCanvases.
Referenced by CbmAnaJpsiReport::Draw(), CbmAnaJpsiSuperEventReport::Draw(), CbmAnaJpsiReport::Draw2DCut(), CbmStsDigitizeQaReport::Draw2dHistograms(), CbmLitTrackingQaReport::DrawAccAndRec(), DrawAccAndRec(), CbmAnaJpsiReport::DrawAnalysisStepsH1(), CbmAnaJpsiReport::DrawAnalysisStepsH2(), CbmLitFieldApproximationQaReport::DrawApr(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), CbmAnaJpsiReport::DrawBgSource2D(), CbmAnaJpsiSuperEventReport::DrawComparison(), CbmAnaJpsiReport::DrawCutH1(), CbmLitRadLengthQaReport::DrawDetector(), CbmLitTrackingQaReport::DrawEfficiency(), DrawEfficiency(), CbmLitTrackingQaReport::DrawEfficiencyHistos(), CbmLitFieldQaReport::DrawFieldAlongZ(), CbmLitFieldQaReport::DrawFieldRichPmtPlane(), CbmLitFieldQaReport::DrawFieldSlices(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmLitTrackingQaReport::DrawHitsHistos(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmAnaJpsiSuperEventReport::DrawMinvDiffPtBins(), CbmAnaJpsiReport::DrawMinvMismatchesAll(), CbmAnaJpsiSuperEventReport::DrawMinvMismatchPt(), CbmAnaJpsiReport::DrawMinvSAndBgAllSteps(), CbmAnaJpsiSuperEventReport::DrawMinvSignalBg(), CbmAnaJpsiReport::DrawMomEffAllSteps(), CbmAnaJpsiReport::DrawMomMcVsRec(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmAnaJpsiReport::DrawPairSource(), CbmAnaJpsiSuperEventReport::DrawPairSource(), CbmLitTrackingQaReport::DrawPionSuppression(), CbmAnaJpsiReport::DrawPtYEfficiencyAll(), CbmLitFitQaReport::DrawResidualAndPullHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), CbmAnaJpsiReport::DrawSignalMinv(), CbmLitFieldApproximationQaReport::DrawSlices(), CbmLitFitQaReport::DrawTrackMomentumAtVertex(), CbmLitFitQaReport::DrawTrackParams(), CbmLitFitQaReport::DrawTrackParamsAtVertex(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), CbmLitTrackingQaReport::DrawYPt(), CbmLitTofQaReport::FitHistograms(), CbmAnaJpsiReport::SignalOverBgAllSteps(), and CbmAnaJpsiSuperEventReport::SignalOverBgAllSteps().
|
privateinherited |
Create concrete CbmReportElement instance based on report type.
[in] | reportType | Type of the report to be produced. |
Definition at line 42 of file CbmReport.cxx.
References CbmReport::fOut, CbmReport::fR, CbmReport::fReportName, CbmReport::fReportType, CbmReport::GetOutputDir(), kCoutReport, kHtmlReport, kLatexReport, and kTextReport.
Referenced by CbmReport::CreateReports().
|
protectedinherited |
Create all available report types.
Definition at line 71 of file CbmReport.cxx.
References CbmReport::Create(), CbmReport::CreateReportElement(), CbmReport::DeleteReportElement(), CbmReport::Draw(), kCoutReport, kHtmlReport, kLatexReport, kTextReport, and CbmReport::SaveCanvasesAsImages().
|
privateinherited |
Delete report element. Normally should be called at the end of Create function.
Definition at line 65 of file CbmReport.cxx.
Referenced by CbmReport::CreateReports().
|
protected |
Divide two histograms.
[in] | histo1 | Numerator. |
[in] | histo2 | Denominator. |
[out] | histo3 | Output histogram. |
[in] | scale | Scaling factor. |
Definition at line 219 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by CalculateEfficiencyHistos().
|
protectedvirtual |
Inherited from CbmLitStudyReport.
Implements CbmReport.
Definition at line 145 of file CbmLitTrackingQaStudyReport.cxx.
References CalculateEfficiencyHistos(), DrawEfficiencyHistos(), and SetDefaultDrawStyle().
|
inlineprotectedinherited |
Inherited from TObject. This method is implemented in order to avoid warnings.
Definition at line 97 of file CbmReport.h.
|
protected |
Draw accepted and reconstructed tracks histograms.
[in] | canvasName | Name of canvas. |
[in] | histName | Histogram name. |
Definition at line 198 of file CbmLitTrackingQaStudyReport.cxx.
References CbmReport::CreateCanvas(), DrawH1(), CbmStudyReport::GetStudyName(), CbmHistManager::H1(), CbmStudyReport::HM(), and kLinear.
Referenced by DrawEfficiencyHistos().
|
protected |
Draw efficiency histogram.
[in] | canvasName | Name of canvas. |
[in] | histName | Histogram name. |
Definition at line 176 of file CbmLitTrackingQaStudyReport.cxx.
References CalcEfficiency(), CbmReport::CreateCanvas(), DrawH1(), DrawMeanEfficiencyLines(), CbmStudyReport::GetStudyName(), CbmHistManager::H1(), CbmStudyReport::HM(), and kLinear.
Referenced by DrawEfficiencyHistos().
|
protected |
Main function for drawing efficiency histograms.
Definition at line 152 of file CbmLitTrackingQaStudyReport.cxx.
References DrawAccAndRec(), DrawEfficiency(), and CbmStudyReport::HM().
Referenced by Draw().
|
protected |
Draw mean efficiency lines on histogram.
[in] | histos | Vector of histograms. |
[in] | efficiencies | Vector of efficiency numbers. |
Definition at line 228 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by DrawEfficiency().
|
inlineinherited |
Definition at line 76 of file CbmReport.h.
References CbmReport::fOutputDir.
Referenced by CbmReport::CreateReportElement(), CbmReport::SaveCanvasesAsImages(), and CbmReport::WriteCanvases().
|
inlineinherited |
Definition at line 74 of file CbmReport.h.
References CbmReport::fReportName.
Referenced by CbmStsDigitizeQaReport::Draw2dHistograms(), CbmLitFieldApproximationQaReport::DrawApr(), CbmLitFieldQaReport::DrawFieldAlongZ(), CbmLitFieldQaReport::DrawFieldRichPmtPlane(), CbmLitFieldQaReport::DrawFieldSlices(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), and CbmLitFieldApproximationQaReport::DrawSlices().
|
inlineinherited |
Definition at line 75 of file CbmReport.h.
References CbmReport::fReportTitle.
|
inlineinherited |
Definition at line 79 of file CbmStudyReport.h.
References CbmStudyReport::fStudyNames.
Referenced by DrawAccAndRec(), and DrawEfficiency().
|
inlineinherited |
Definition at line 78 of file CbmStudyReport.h.
References CbmStudyReport::fStudyNames.
Referenced by CbmRichGeoTestStudyReport::Create(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), PrintEfficiencyTable(), CbmLitClusteringQaStudyReport::PrintNofObjects(), CbmRichGeoTestStudyReport::PrintRow(), and PrintTable().
|
inlineinherited |
Definition at line 76 of file CbmStudyReport.h.
References CbmStudyReport::fHM.
Referenced by CalculateEfficiencyHistos(), DrawAccAndRec(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), DrawEfficiency(), DrawEfficiencyHistos(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), PrintEfficiencyTable(), CbmLitClusteringQaStudyReport::PrintNofObjects(), and PrintTable().
|
inlineinherited |
Definition at line 77 of file CbmStudyReport.h.
References CbmStudyReport::fHM.
|
inlineinherited |
All text output goes to this stream.
Definition at line 66 of file CbmReport.h.
References CbmReport::fOut.
Referenced by CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitClusteringQaReport::Create(), CbmLitClusteringQaStudyReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFieldQaReport::Create(), CbmLitFitQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTofQaReport::Create(), CbmLitTrackingQaReport::Create(), Create(), CbmRichGeoTestStudyReport::Create(), CbmStsDigitizeQaReport::Create(), and CbmReport::PrintCanvases().
|
protectedinherited |
Print images created from canvases in the report.
Definition at line 121 of file CbmReport.cxx.
References CbmReport::fCanvases, CbmReportElement::Image(), CbmReport::Out(), and CbmReport::R().
Referenced by CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitClusteringQaReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFieldQaReport::Create(), CbmLitFitQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTofQaReport::Create(), CbmLitTrackingQaReport::Create(), Create(), and CbmStsDigitizeQaReport::Create().
|
protected |
Return formated string with table of efficiency numbers.
[in] | tableName | Table name. |
[in] | pattern | Pattern of histogram name. |
Definition at line 113 of file CbmLitTrackingQaStudyReport.cxx.
References CbmStudyReport::GetStudyNames(), CbmStudyReport::HM(), CbmReport::R(), CbmReportElement::TableBegin(), CbmReportElement::TableEnd(), and CbmReportElement::TableRow().
Referenced by Create().
|
protected |
Return formated string with table of numbers.
[in] | tableName | Table name. |
[in] | pattern | Pattern of histogram name. |
[in] | rowNameFormatter | Function which formats row name. |
[in] | cellFormatter | Function formats cell string. |
Definition at line 90 of file CbmLitTrackingQaStudyReport.cxx.
References CbmStudyReport::GetStudyNames(), CbmStudyReport::HM(), CbmReport::R(), CbmReportElement::TableBegin(), CbmReportElement::TableEnd(), and CbmReportElement::TableRow().
Referenced by Create().
|
inlineinherited |
Accessor to CbmReportElement object. User has to write the report using available tags from CbmReportElement class.
Definition at line 61 of file CbmReport.h.
References CbmReport::fR.
Referenced by CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitClusteringQaReport::Create(), CbmLitClusteringQaStudyReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFieldQaReport::Create(), CbmLitFitQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTofQaReport::Create(), CbmLitTrackingQaReport::Create(), Create(), CbmRichGeoTestStudyReport::Create(), CbmStsDigitizeQaReport::Create(), CbmReport::PrintCanvases(), PrintEfficiencyTable(), CbmLitTrackingQaReport::PrintNofGhosts(), CbmLitClusteringQaReport::PrintNofObjects(), CbmLitClusteringQaStudyReport::PrintNofObjects(), CbmLitTrackingQaReport::PrintNofObjects(), CbmLitTrackingQaReport::PrintPionSuppression(), CbmLitFitQaReport::PrintResAndPullRow(), CbmRichGeoTestStudyReport::PrintRow(), PrintTable(), CbmLitTrackingQaReport::PrintTrackHits(), and CbmLitTrackingQaReport::PrintTrackingEfficiency().
|
protectedinherited |
Save all canvases to images.
Definition at line 101 of file CbmReport.cxx.
References CbmReport::fCanvases, CbmReport::GetOutputDir(), and Cbm::SaveCanvasAsImage().
Referenced by CbmReport::CreateReports().
|
inlineinherited |
Definition at line 71 of file CbmReport.h.
References CbmReport::fOutputDir.
|
inlineinherited |
Definition at line 69 of file CbmReport.h.
References CbmReport::fReportName.
Referenced by CbmAnaDielectronStudyReportAll::CbmAnaDielectronStudyReportAll(), CbmAnaJpsiReport::CbmAnaJpsiReport(), CbmAnaJpsiSuperEventReport::CbmAnaJpsiSuperEventReport(), CbmLitClusteringQaReport::CbmLitClusteringQaReport(), CbmLitClusteringQaStudyReport::CbmLitClusteringQaStudyReport(), CbmLitFieldApproximationQaReport::CbmLitFieldApproximationQaReport(), CbmLitFieldQaReport::CbmLitFieldQaReport(), CbmLitFitQaReport::CbmLitFitQaReport(), CbmLitFitQaStudyReport::CbmLitFitQaStudyReport(), CbmLitRadLengthQaReport::CbmLitRadLengthQaReport(), CbmLitTofQaReport::CbmLitTofQaReport(), CbmLitTrackingQaReport::CbmLitTrackingQaReport(), CbmLitTrackingQaStudyReport(), CbmRichGeoTestStudyReport::CbmRichGeoTestStudyReport(), and CbmStsDigitizeQaReport::CbmStsDigitizeQaReport().
|
inlineinherited |
Definition at line 70 of file CbmReport.h.
References CbmReport::fReportTitle.
Referenced by CbmAnaDielectronStudyReportAll::CbmAnaDielectronStudyReportAll(), CbmLitFitQaStudyReport::CbmLitFitQaStudyReport(), and CbmLitTrackingQaStudyReport().
|
protectedinherited |
Write canvases to file.
Definition at line 112 of file CbmReport.cxx.
References CbmReport::fCanvases, and CbmReport::GetOutputDir().
|
privateinherited |
Definition at line 149 of file CbmReport.h.
Referenced by CbmReport::CreateCanvas(), CbmReport::PrintCanvases(), CbmReport::SaveCanvasesAsImages(), and CbmReport::WriteCanvases().
|
privateinherited |
Definition at line 82 of file CbmStudyReport.h.
Referenced by CbmStudyReport::HM(), and CbmStudyReport::HM().
|
mutableprivateinherited |
Definition at line 144 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), and CbmReport::Out().
|
privateinherited |
Definition at line 141 of file CbmReport.h.
Referenced by CbmReport::GetOutputDir(), and CbmReport::SetOutputDir().
|
privateinherited |
Definition at line 143 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), and CbmReport::R().
|
privateinherited |
Definition at line 139 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), CbmReport::GetReportName(), and CbmReport::SetReportName().
|
privateinherited |
Definition at line 140 of file CbmReport.h.
Referenced by CbmReport::GetReportTitle(), and CbmReport::SetReportTitle().
|
privateinherited |
Definition at line 142 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement().
|
privateinherited |
Definition at line 83 of file CbmStudyReport.h.
Referenced by CbmStudyReport::GetStudyName(), and CbmStudyReport::GetStudyNames().