CbmRoot
CbmStudyReport Class Referenceabstract

Base class for study reports. More...

#include <CbmStudyReport.h>

Inheritance diagram for CbmStudyReport:
[legend]
Collaboration diagram for CbmStudyReport:
[legend]

Public Member Functions

 CbmStudyReport ()
 Constructor. More...
 
virtual ~CbmStudyReport ()
 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...
 
virtual void Create ()=0
 Inherited from CbmReport. Pure abstract function which is called from public Create() function. More...
 
const std::vector< CbmHistManager * > & HM () const
 
CbmHistManagerHM (Int_t index) const
 
const std::vector< std::string > & GetStudyNames () const
 
const std::string & GetStudyName (Int_t index) const
 
const CbmReportElementR () 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

virtual void Draw ()=0
 Pure abstract function which is called from public Create() function. This function has to draw all necessary histograms and graphs. It is called only once before report creation. 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
 
CbmReportElementfR
 
std::ostream * fOut
 
std::vector< TCanvas * > fCanvases
 

Detailed Description

Base class for study reports.

Author
Semen Lebedev s.leb.nosp@m.edev.nosp@m.@gsi..nosp@m.de
Date
2011

Definition at line 26 of file CbmStudyReport.h.

Constructor & Destructor Documentation

◆ CbmStudyReport()

CbmStudyReport::CbmStudyReport ( )

Constructor.

Definition at line 22 of file CbmStudyReport.cxx.

◆ ~CbmStudyReport()

CbmStudyReport::~CbmStudyReport ( )
virtual

Destructor.

Definition at line 24 of file CbmStudyReport.cxx.

Member Function Documentation

◆ Create() [1/3]

virtual void CbmStudyReport::Create ( )
pure virtual

Inherited from CbmReport. Pure abstract function which is called from public Create() function.

Implements CbmReport.

Implemented in CbmRichGeoTestStudyReport, CbmLitTrackingQaStudyReport, CbmLitClusteringQaStudyReport, CbmLitFitQaStudyReport, and CbmAnaDielectronStudyReportAll.

◆ Create() [2/3]

void CbmStudyReport::Create ( const std::vector< CbmHistManager * > &  histManagers,
const std::vector< std::string > &  studyNames,
const std::string &  outputDir 
)

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.

Parameters
[in]histManagersArray of histogram managers for which report is created.
[in]studyNamesNames of studies.
[in]outputDirname of the output directory.

Referenced by CbmAnaDielectronReports::CreateStudyReport().

◆ Create() [3/3]

void CbmStudyReport::Create ( const std::vector< std::string > &  fileNames,
const std::vector< std::string > &  studyNames,
const std::string &  outputDir 
)

Main function which creates report data.

Same pattern is used here.

Parameters
[in]fileNamesArray of file names for which report is created.
[in]studyNamesNames of studies.
[in]outputDirname of the output directory.

◆ CreateCanvas()

TCanvas * CbmReport::CreateCanvas ( const char *  name,
const char *  title,
Int_t  ww,
Int_t  wh 
)
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(), CbmLitTrackingQaStudyReport::DrawAccAndRec(), CbmAnaJpsiReport::DrawAnalysisStepsH1(), CbmAnaJpsiReport::DrawAnalysisStepsH2(), CbmLitFieldApproximationQaReport::DrawApr(), CbmAnaDielectronStudyReportAll::DrawBgMinv(), CbmAnaJpsiReport::DrawBgSource2D(), CbmAnaJpsiSuperEventReport::DrawComparison(), CbmAnaJpsiReport::DrawCutH1(), CbmLitRadLengthQaReport::DrawDetector(), CbmLitTrackingQaReport::DrawEfficiency(), CbmLitTrackingQaStudyReport::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().

◆ CreateReportElement()

void CbmReport::CreateReportElement ( ReportType  reportType)
privateinherited

Create concrete CbmReportElement instance based on report type.

Parameters
[in]reportTypeType 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().

◆ CreateReports()

void CbmReport::CreateReports ( )
protectedinherited

◆ DeleteReportElement()

void CbmReport::DeleteReportElement ( )
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().

◆ Draw() [1/2]

virtual void CbmReport::Draw ( )
protectedpure virtualinherited

◆ Draw() [2/2]

void CbmReport::Draw ( Option_t *  )
inlineprotectedinherited

Inherited from TObject. This method is implemented in order to avoid warnings.

Definition at line 87 of file CbmReport.h.

◆ GetOutputDir()

const std::string& CbmReport::GetOutputDir ( ) const
inlineinherited

◆ GetReportName()

◆ GetReportTitle()

const std::string& CbmReport::GetReportTitle ( ) const
inlineinherited

Definition at line 65 of file CbmReport.h.

References CbmReport::fReportTitle.

◆ GetStudyName()

const std::string& CbmStudyReport::GetStudyName ( Int_t  index) const
inline

◆ GetStudyNames()

◆ HM() [1/2]

◆ HM() [2/2]

CbmHistManager* CbmStudyReport::HM ( Int_t  index) const
inline

Definition at line 75 of file CbmStudyReport.h.

References fHM.

◆ Out()

◆ PrintCanvases()

◆ R()

◆ SaveCanvasesAsImages()

void CbmReport::SaveCanvasesAsImages ( ) const
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().

◆ SetOutputDir()

void CbmReport::SetOutputDir ( const std::string &  outputDir)
inlineinherited

Definition at line 61 of file CbmReport.h.

References CbmReport::fOutputDir.

◆ SetReportName()

◆ SetReportTitle()

void CbmReport::SetReportTitle ( const std::string &  title)
inlineinherited

◆ WriteCanvases()

void CbmReport::WriteCanvases ( ) const
protectedinherited

Write canvases to file.

Definition at line 101 of file CbmReport.cxx.

References CbmReport::fCanvases, CbmReport::GetOutputDir(), and i.

Member Data Documentation

◆ fCanvases

std::vector<TCanvas*> CbmReport::fCanvases
privateinherited

◆ fHM

std::vector<CbmHistManager*> CbmStudyReport::fHM
private

Definition at line 82 of file CbmStudyReport.h.

Referenced by HM().

◆ fOut

std::ostream* CbmReport::fOut
mutableprivateinherited

Definition at line 135 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement(), and CbmReport::Out().

◆ fOutputDir

std::string CbmReport::fOutputDir
privateinherited

Definition at line 132 of file CbmReport.h.

Referenced by CbmReport::GetOutputDir(), and CbmReport::SetOutputDir().

◆ fR

CbmReportElement* CbmReport::fR
privateinherited

Definition at line 134 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement(), and CbmReport::R().

◆ fReportName

std::string CbmReport::fReportName
privateinherited

◆ fReportTitle

std::string CbmReport::fReportTitle
privateinherited

Definition at line 131 of file CbmReport.h.

Referenced by CbmReport::GetReportTitle(), and CbmReport::SetReportTitle().

◆ fReportType

ReportType CbmReport::fReportType
privateinherited

Definition at line 133 of file CbmReport.h.

Referenced by CbmReport::CreateReportElement().

◆ fStudyNames

std::vector<std::string> CbmStudyReport::fStudyNames
private

Definition at line 83 of file CbmStudyReport.h.

Referenced by GetStudyName(), and GetStudyNames().


The documentation for this class was generated from the following files: