CbmRoot
|
Creates study report for tracking QA. More...
#include <CbmLitTrackingQaStudyReport.h>
Public Member Functions | |
CbmLitTrackingQaStudyReport () | |
Constructor. More... | |
virtual | ~CbmLitTrackingQaStudyReport () |
Destructor. More... | |
void | Create (const std::vector< CbmHistManager * > &histManagers, const std::vector< std::string > &studyNames, const std::string &outputDir) |
Main function which creates report data. More... | |
void | Create (const std::vector< std::string > &fileNames, const std::vector< std::string > &studyNames, const std::string &outputDir) |
Main function which creates report data. More... | |
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. More... | |
std::ostream & | Out () const |
All text output goes to this stream. More... | |
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. More... | |
void | Draw () |
Inherited from CbmLitStudyReport. More... | |
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. More... | |
string | PrintEfficiencyTable (const string &tableName, const string &pattern) const |
Return formated string with table of efficiency numbers. More... | |
void | DivideHistos (TH1 *histo1, TH1 *histo2, TH1 *histo3, Double_t scale) |
Divide two histograms. More... | |
void | CalculateEfficiencyHistos () |
Calculate efficiency histograms. More... | |
void | DrawEfficiencyHistos () |
Main function for drawing efficiency histograms. More... | |
void | DrawEfficiency (const string &canvasName, const string &histName) |
Draw efficiency histogram. More... | |
void | DrawMeanEfficiencyLines (const std::vector< TH1 * > &histos, const std::vector< Double_t > &efficiencies) |
Draw mean efficiency lines on histogram. More... | |
void | DrawAccAndRec (const string &canvasName, const string &histName) |
Draw accepted and reconstructed tracks histograms. More... | |
Double_t | CalcEfficiency (const TH1 *histRec, const TH1 *histAcc, Double_t scale=1.) const |
Calculate efficiency for two histograms. More... | |
void | Draw (Option_t *) |
Inherited from TObject. This method is implemented in order to avoid warnings. More... | |
void | CreateReports () |
Create all available report types. More... | |
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. More... | |
void | SaveCanvasesAsImages () const |
Save all canvases to images. More... | |
void | WriteCanvases () const |
Write canvases to file. More... | |
void | PrintCanvases () const |
Print images created from canvases in the report. More... | |
Private Member Functions | |
void | CreateReportElement (ReportType reportType) |
Create concrete CbmReportElement instance based on report type. More... | |
void | DeleteReportElement () |
Delete report element. Normally should be called at the end of Create function. More... | |
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 28 of file CbmLitTrackingQaStudyReport.h.
CbmLitTrackingQaStudyReport::CbmLitTrackingQaStudyReport | ( | ) |
Constructor.
Definition at line 58 of file CbmLitTrackingQaStudyReport.cxx.
References CbmReport::SetReportName(), and CbmReport::SetReportTitle().
|
virtual |
Destructor.
Definition at line 63 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 259 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by DrawEfficiency().
|
protected |
Calculate efficiency histograms.
Definition at line 270 of file CbmLitTrackingQaStudyReport.cxx.
References DivideHistos(), Cbm::FindAndReplace(), and CbmStudyReport::HM().
Referenced by Draw().
|
protectedvirtual |
Inherited from CbmLitStudyReport.
Implements CbmStudyReport.
Definition at line 65 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 82 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(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmLitTrackingQaReport::DrawHitsHistos(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmAnaJpsiSuperEventReport::DrawMinvDiffPtBins(), CbmAnaJpsiReport::DrawMinvMismatchesAll(), CbmAnaJpsiSuperEventReport::DrawMinvMismatchPt(), CbmAnaJpsiReport::DrawMinvSAndBgAllSteps(), CbmAnaJpsiSuperEventReport::DrawMinvSignalBg(), CbmAnaJpsiReport::DrawMomEffAllSteps(), CbmAnaJpsiReport::DrawMomMcVsRec(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmAnaJpsiSuperEventReport::DrawPairSource(), CbmAnaJpsiReport::DrawPairSource(), CbmLitTrackingQaReport::DrawPionSuppression(), CbmAnaJpsiReport::DrawPtYEfficiencyAll(), CbmLitFitQaReport::DrawResidualAndPullHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), CbmAnaDielectronStudyReportAll::DrawSBgMinv(), CbmAnaJpsiReport::DrawSignalMinv(), CbmLitFieldApproximationQaReport::DrawSlices(), CbmLitFitQaReport::DrawTrackMomentumAtVertex(), CbmLitFitQaReport::DrawTrackParams(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), CbmLitFitQaReport::DrawTrackParamsAtVertex(), CbmLitTrackingQaReport::DrawYPt(), CbmLitTofQaReport::FitHistograms(), CbmAnaJpsiSuperEventReport::SignalOverBgAllSteps(), and CbmAnaJpsiReport::SignalOverBgAllSteps().
|
privateinherited |
Create concrete CbmReportElement instance based on report type.
[in] | reportType | Type of the report to be produced. |
Definition at line 36 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 60 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 55 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 231 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by CalculateEfficiencyHistos().
|
protectedvirtual |
Inherited from CbmLitStudyReport.
Implements CbmReport.
Definition at line 153 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 87 of file CbmReport.h.
|
protected |
Draw accepted and reconstructed tracks histograms.
[in] | canvasName | Name of canvas. |
[in] | histName | Histogram name. |
Definition at line 208 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 182 of file CbmLitTrackingQaStudyReport.cxx.
References CalcEfficiency(), CbmReport::CreateCanvas(), DrawH1(), DrawMeanEfficiencyLines(), Cbm::FindAndReplace(), CbmStudyReport::GetStudyName(), CbmHistManager::H1(), CbmStudyReport::HM(), and kLinear.
Referenced by DrawEfficiencyHistos().
|
protected |
Main function for drawing efficiency histograms.
Definition at line 159 of file CbmLitTrackingQaStudyReport.cxx.
References DrawAccAndRec(), DrawEfficiency(), CbmStudyReport::HM(), and i.
Referenced by Draw().
|
protected |
Draw mean efficiency lines on histogram.
[in] | histos | Vector of histograms. |
[in] | efficiencies | Vector of efficiency numbers. |
Definition at line 242 of file CbmLitTrackingQaStudyReport.cxx.
Referenced by DrawEfficiency().
|
inlineinherited |
Definition at line 66 of file CbmReport.h.
References CbmReport::fOutputDir.
Referenced by CbmReport::CreateReportElement(), CbmReport::SaveCanvasesAsImages(), and CbmReport::WriteCanvases().
|
inlineinherited |
Definition at line 64 of file CbmReport.h.
References CbmReport::fReportName.
Referenced by CbmStsDigitizeQaReport::Draw2dHistograms(), CbmLitFieldApproximationQaReport::DrawApr(), CbmSimulationReport::DrawH2ByPattern(), CbmStsDigitizeQaReport::DrawHistograms(), CbmStsDigitizeQaReport::DrawLogHistograms(), CbmStsDigitizeQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawNofObjectsHistograms(), CbmLitClusteringQaReport::DrawResidualsAndPulls(), and CbmLitFieldApproximationQaReport::DrawSlices().
|
inlineinherited |
Definition at line 65 of file CbmReport.h.
References CbmReport::fReportTitle.
|
inlineinherited |
Definition at line 77 of file CbmStudyReport.h.
References CbmStudyReport::fStudyNames.
Referenced by DrawAccAndRec(), and DrawEfficiency().
|
inlineinherited |
Definition at line 76 of file CbmStudyReport.h.
References CbmStudyReport::fStudyNames.
Referenced by CbmRichGeoTestStudyReport::Create(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), CbmAnaDielectronStudyReportAll::DrawSBgMinv(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), PrintEfficiencyTable(), CbmLitClusteringQaStudyReport::PrintNofObjects(), CbmRichGeoTestStudyReport::PrintRow(), and PrintTable().
|
inlineinherited |
Definition at line 74 of file CbmStudyReport.h.
References CbmStudyReport::fHM.
Referenced by CalculateEfficiencyHistos(), DrawAccAndRec(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), DrawEfficiency(), DrawEfficiencyHistos(), CbmAnaDielectronStudyReportAll::DrawSBgMinv(), CbmLitFitQaStudyReport::DrawTrackParamsAtVertex(), PrintEfficiencyTable(), CbmLitClusteringQaStudyReport::PrintNofObjects(), and PrintTable().
|
inlineinherited |
Definition at line 75 of file CbmStudyReport.h.
References CbmStudyReport::fHM.
|
inlineinherited |
All text output goes to this stream.
Definition at line 56 of file CbmReport.h.
References CbmReport::fOut.
Referenced by CbmStsDigitizeQaReport::Create(), CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitTofQaReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitClusteringQaStudyReport::Create(), CbmLitFitQaReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTrackingQaReport::Create(), CbmLitClusteringQaReport::Create(), CbmRichGeoTestStudyReport::Create(), Create(), and CbmReport::PrintCanvases().
|
protectedinherited |
Print images created from canvases in the report.
Definition at line 109 of file CbmReport.cxx.
References CbmReport::fCanvases, i, CbmReportElement::Image(), CbmReport::Out(), and CbmReport::R().
Referenced by CbmStsDigitizeQaReport::Create(), CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitTofQaReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitFitQaReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTrackingQaReport::Create(), CbmLitClusteringQaReport::Create(), and Create().
|
protected |
Return formated string with table of efficiency numbers.
[in] | tableName | Table name. |
[in] | pattern | Pattern of histogram name. |
Definition at line 120 of file CbmLitTrackingQaStudyReport.cxx.
References Cbm::FindAndReplace(), CbmStudyReport::GetStudyNames(), CbmStudyReport::HM(), i, CbmReport::R(), Cbm::Split(), split(), 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 94 of file CbmLitTrackingQaStudyReport.cxx.
References CbmStudyReport::GetStudyNames(), CbmStudyReport::HM(), i, 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 51 of file CbmReport.h.
References CbmReport::fR.
Referenced by CbmStsDigitizeQaReport::Create(), CbmAnaDielectronStudyReportAll::Create(), CbmAnaJpsiReport::Create(), CbmAnaJpsiSuperEventReport::Create(), CbmLitTofQaReport::Create(), CbmLitFieldApproximationQaReport::Create(), CbmLitFitQaReport::Create(), CbmLitFitQaStudyReport::Create(), CbmLitClusteringQaStudyReport::Create(), CbmLitRadLengthQaReport::Create(), CbmLitTrackingQaReport::Create(), CbmLitClusteringQaReport::Create(), Create(), CbmRichGeoTestStudyReport::Create(), CbmReport::PrintCanvases(), PrintEfficiencyTable(), CbmLitTrackingQaReport::PrintNofGhosts(), CbmLitClusteringQaStudyReport::PrintNofObjects(), CbmLitClusteringQaReport::PrintNofObjects(), CbmLitTrackingQaReport::PrintNofObjects(), CbmLitTrackingQaReport::PrintPionSuppression(), CbmLitFitQaReport::PrintResAndPullRow(), CbmRichGeoTestStudyReport::PrintRow(), PrintTable(), CbmLitTrackingQaReport::PrintTrackHits(), and CbmLitTrackingQaReport::PrintTrackingEfficiency().
|
protectedinherited |
Save all canvases to images.
Definition at line 91 of file CbmReport.cxx.
References CbmReport::fCanvases, CbmReport::GetOutputDir(), i, and Cbm::SaveCanvasAsImage().
Referenced by CbmReport::CreateReports().
|
inlineinherited |
Definition at line 61 of file CbmReport.h.
References CbmReport::fOutputDir.
|
inlineinherited |
Definition at line 59 of file CbmReport.h.
References CbmReport::fReportName.
Referenced by CbmAnaDielectronStudyReportAll::CbmAnaDielectronStudyReportAll(), CbmAnaJpsiReport::CbmAnaJpsiReport(), CbmAnaJpsiSuperEventReport::CbmAnaJpsiSuperEventReport(), CbmLitClusteringQaReport::CbmLitClusteringQaReport(), CbmLitClusteringQaStudyReport::CbmLitClusteringQaStudyReport(), CbmLitFieldApproximationQaReport::CbmLitFieldApproximationQaReport(), CbmLitFitQaReport::CbmLitFitQaReport(), CbmLitFitQaStudyReport::CbmLitFitQaStudyReport(), CbmLitRadLengthQaReport::CbmLitRadLengthQaReport(), CbmLitTofQaReport::CbmLitTofQaReport(), CbmLitTrackingQaReport::CbmLitTrackingQaReport(), CbmLitTrackingQaStudyReport(), CbmRichGeoTestStudyReport::CbmRichGeoTestStudyReport(), and CbmStsDigitizeQaReport::CbmStsDigitizeQaReport().
|
inlineinherited |
Definition at line 60 of file CbmReport.h.
References CbmReport::fReportTitle.
Referenced by CbmAnaDielectronStudyReportAll::CbmAnaDielectronStudyReportAll(), CbmLitFitQaStudyReport::CbmLitFitQaStudyReport(), and CbmLitTrackingQaStudyReport().
|
protectedinherited |
Write canvases to file.
Definition at line 101 of file CbmReport.cxx.
References CbmReport::fCanvases, CbmReport::GetOutputDir(), and i.
|
privateinherited |
Definition at line 140 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().
|
mutableprivateinherited |
Definition at line 135 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), and CbmReport::Out().
|
privateinherited |
Definition at line 132 of file CbmReport.h.
Referenced by CbmReport::GetOutputDir(), and CbmReport::SetOutputDir().
|
privateinherited |
Definition at line 134 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), and CbmReport::R().
|
privateinherited |
Definition at line 130 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement(), CbmReport::GetReportName(), and CbmReport::SetReportName().
|
privateinherited |
Definition at line 131 of file CbmReport.h.
Referenced by CbmReport::GetReportTitle(), and CbmReport::SetReportTitle().
|
privateinherited |
Definition at line 133 of file CbmReport.h.
Referenced by CbmReport::CreateReportElement().
|
privateinherited |
Definition at line 83 of file CbmStudyReport.h.
Referenced by CbmStudyReport::GetStudyName(), and CbmStudyReport::GetStudyNames().