6#include <icomp/CComponentBase.h>
10#include <imtreport/IInspectionReportBuilder.h>
11#include <imtreport/IReportPage.h>
18class CInspectionReportBuilderComp :
public icomp::CComponentBase,
virtual public IInspectionReportBuilder
21 typedef icomp::CComponentBase BaseClass;
23 I_BEGIN_COMPONENT(CInspectionReportBuilderComp);
24 I_REGISTER_INTERFACE(imtreport::IInspectionReportBuilder);
28 virtual bool CreateReport(
const ReportInputData& inputData, IReportDocument& reportDocument,
const iprm::IParamsSet* paramsPtr =
nullptr)
const override;
32 virtual void OnComponentCreated()
override;
35 static QString GetStatusText(istd::IInformationProvider::InformationCategory status);
36 static icmm::CRgb GetStatusColor(istd::IInformationProvider::InformationCategory status);
37 static QString GetErrorClassText(
const ErrorClass errorClass);
39 bool CreateTitlePage(
const ReportInputData& reportData, IReportDocument& reportDocument)
const;
40 bool CreateInspectionPage(
const ReportInputData& reportData,
const Inspection& inspection, IReportDocument& reportDocument)
const;
42 void GetTitlePageRegionResults(
const ReportInputData& reportData, Results& results)
const;
43 void GetInspectionPageRegionResults(
const Inspection& inspection, Results& results)
const;
46 const ReportInputData& reportData,
47 const Inspection* inspectionPtr,
48 i2d::CVector2d& topLeft,
49 IReportPage& page)
const;
50 void AddBody(
const QString& imagePath, i2d::CVector2d& topLeft, IReportPage& page)
const;
51 void AddTitlePageFooter(
const ReportInputData& reportData, i2d::CVector2d& topLeft, IReportPage& page)
const;
52 void AddInspectionPageFooter(
const Inspection& inspection, i2d::CVector2d& topLeft, IReportPage& page)
const;