15#include <boost/assign/list_of.hpp>
16#include <boost/property_tree/ptree.hpp>
17using boost::assign::list_of;
19using std::stringstream;
34 Out() <<
PrintRow(
"circle_fit_eff_mean",
"Circle fit");
35 Out() <<
PrintRow(
"ellipse_fit_eff_mean",
"Ellipse fit");
39 Out() <<
PrintRow(
"nof_points_in_ring_mean",
"Nof points, mean");
40 Out() <<
PrintRow(
"nof_points_in_ring_rms",
"Nof points, rms");
41 Out() <<
PrintRow(
"nof_hits_in_ring_mean",
"Nof hits, mean");
42 Out() <<
PrintRow(
"nof_hits_in_ring_rms",
"Nof hits, rms");
46 Out() <<
PrintRow(
"points_fit_a_axis_mean",
"A axis, mean");
47 Out() <<
PrintRow(
"points_fit_a_axis_rms",
"A axis, rms");
48 Out() <<
PrintRow(
"points_fit_b_axis_mean",
"B axis, mean");
49 Out() <<
PrintRow(
"points_fit_b_axis_rms",
"B axis, rms");
50 Out() <<
PrintRow(
"points_fit_boa_mean",
"B/A, mean");
51 Out() <<
PrintRow(
"points_fit_boa_rms",
"B/A, rms");
52 Out() <<
PrintRow(
"points_fit_r_mean",
"Radius, mean");
53 Out() <<
PrintRow(
"points_fit_r_rms",
"Radius, mean");
57 Out() <<
PrintRow(
"hits_fit_a_axis_mean",
"A axis, mean");
58 Out() <<
PrintRow(
"hits_fit_a_axis_rms",
"A axis, rms");
59 Out() <<
PrintRow(
"hits_fit_b_axis_mean",
"B axis, mean");
60 Out() <<
PrintRow(
"hits_fit_b_axis_rms",
"B axis, rms");
61 Out() <<
PrintRow(
"hits_fit_boa_mean",
"B/A, mean");
63 Out() <<
PrintRow(
"hits_fit_r_mean",
"Radius, mean");
64 Out() <<
PrintRow(
"hits_fit_r_rms",
"Radius, mean");
68 Out() <<
PrintRow(
"diff_ellipse_da_mean",
"dA, mean");
69 Out() <<
PrintRow(
"diff_ellipse_da_rms",
"dA, rms");
70 Out() <<
PrintRow(
"diff_ellipse_db_mean",
"dB, mean");
71 Out() <<
PrintRow(
"diff_ellipse_db_rms",
"dB, rms");
72 Out() <<
PrintRow(
"diff_ellipse_dx_mean",
"dX, mean");
73 Out() <<
PrintRow(
"diff_ellipse_dx_rms",
"dX, rms");
74 Out() <<
PrintRow(
"diff_ellipse_dy_mean",
"dY, mean");
75 Out() <<
PrintRow(
"diff_ellipse_dy_rms",
"dY, rms");
79 Out() <<
PrintRow(
"diff_circle_dr_mean",
"dR, mean");
81 Out() <<
PrintRow(
"diff_circle_dx_mean",
"dX, mean");
83 Out() <<
PrintRow(
"diff_circle_dy_mean",
"dY, mean");
96 return R()->
TableRow(list_of(name).range(n));
Abstract class for basic report elements (headers, tables, images etc.).
Creates study report for RICH geometry testing.
static constexpr size_t size()
virtual std::string TableRow(const std::vector< std::string > &row) const =0
Return string with table row tags.
virtual std::string Title(int size, const std::string &title) const =0
Return string with title.
virtual std::string TableBegin(const std::string &caption, const std::vector< std::string > &colNames) const =0
Return string with table open tag.
virtual std::string DocumentBegin() const =0
Return string with open tags for document.
virtual std::string TableEnd() const =0
Return string with table close tag.
virtual std::string DocumentEnd() const =0
Return string with close tags of the document.
std::ostream & Out() const
All text output goes to this stream.
void SetReportName(const std::string &name)
const CbmReportElement * R() const
Accessor to CbmReportElement object. User has to write the report using available tags from CbmReport...
void Create()
Inherited from CbmLitStudyReport.
virtual string PrintValue(int studyId, const string &valueTitle)
CbmRichGeoTestStudyReport()
Constructor.
virtual ~CbmRichGeoTestStudyReport()
Destructor.
virtual string PrintRow(const string &property, const string &name)
Print one row in a table.
const std::vector< std::string > & GetStudyNames() const