/** * \file CbmLitFieldQaHTMLGenerator.h * * \brief Creates HTML page out of property tree for field QA. * * \author Andrey Lebedev * \date 2011 */ #ifndef CBMLITFIELDQAHTMLGENERATOR_H_ #define CBMLITFIELDQAHTMLGENERATOR_H_ #include "CbmLitQaBaseGenerator.h" #include #include /** * \class CbmLitFieldQaHTMLGenerator * * \brief Creates HTML page out of property tree for field QA. * * \author Andrey Lebedev * \date 2011 * */ class CbmLitFieldQaHTMLGenerator : public CbmLitQaBaseGenerator { public: /** * \brief Constructor. */ CbmLitFieldQaHTMLGenerator(); /** * \brief Destructor. */ virtual ~CbmLitFieldQaHTMLGenerator(); /** * \brief Main function which creates HTML. * * \param[out] out Output stream. * \param[in] qa Property tree with field Qa results. * \param[in] ideal Property tree with ideal values. * \param[in] check Property tree with checked results. */ void Create( std::ostream& out, const boost::property_tree::ptree* qa, const boost::property_tree::ptree* ideal, const boost::property_tree::ptree* check); private: /** * \brief Prints summary table for field QA in HTML format. * \return String with HTML. */ std::string PrintSummaryTable(); /** * \brief Prints table row which spans over all columns. * \param[in] row Row counter. Used to highlight row. * \param[in] ncols Number of columns to span. * \param[in] name Name of the row. * \return std::string with table row in HTML format. */ std::string PrintEmptyRow( int row, int ncols, const std::string& name); }; #endif /* CBMLITFIELDQAHTMLGENERATOR_H_ */