Skip to content
Snippets Groups Projects
  • Sergei Zharko's avatar
    fb4f5c45
    cbm::qa::report framework · fb4f5c45
    Sergei Zharko authored and Sergei Zharko's avatar Sergei Zharko committed
    The framework encapsulates creation tools for a generic QA-report source, which can be compiled
    into different sources (LaTeX, Beamer, Markdown, HTML, etc.).
    
    A report consists from an ordered tree of elements (cbm::qa::report::Element). At the moment
    three types of elements are available: cbm::qa::report::Section, cbm::qa::report:Figure and
    cbm::qa::report::Table. Each element is registered in the LinkDef.h file for accessibility
    from a ROOT-macro, but never the less does not rely on the ROOT libraries.
    
    A variety of the report source formats is achieved using the Visitor desing pattern. Each set
    of element compilation rules is defined in a specific implementation of the cbm::qa::report::Engine
    class (the visitor), which alows the simultanious creation of report different sources. From the
    box the source for LaTeX plain document (cbm::qa::report::LatexEngine) and HTML-page
    (cbm::qa::report::HtmlEngine) are available.
    
    The use-case of the framework is given in the cbmroot/macro/qa/report_example.C macro. The macro
    generate CA tracking status report for a given setup and requires an output from the run_qa.C/mcbm_qa.C
    macro.
    fb4f5c45
    History
    cbm::qa::report framework
    Sergei Zharko authored and Sergei Zharko's avatar Sergei Zharko committed
    The framework encapsulates creation tools for a generic QA-report source, which can be compiled
    into different sources (LaTeX, Beamer, Markdown, HTML, etc.).
    
    A report consists from an ordered tree of elements (cbm::qa::report::Element). At the moment
    three types of elements are available: cbm::qa::report::Section, cbm::qa::report:Figure and
    cbm::qa::report::Table. Each element is registered in the LinkDef.h file for accessibility
    from a ROOT-macro, but never the less does not rely on the ROOT libraries.
    
    A variety of the report source formats is achieved using the Visitor desing pattern. Each set
    of element compilation rules is defined in a specific implementation of the cbm::qa::report::Engine
    class (the visitor), which alows the simultanious creation of report different sources. From the
    box the source for LaTeX plain document (cbm::qa::report::LatexEngine) and HTML-page
    (cbm::qa::report::HtmlEngine) are available.
    
    The use-case of the framework is given in the cbmroot/macro/qa/report_example.C macro. The macro
    generate CA tracking status report for a given setup and requires an output from the run_qa.C/mcbm_qa.C
    macro.