KiCad PCB EDA Suite
|
A pure virtual class used to derive REPORTER objects from. More...
#include <reporter.h>
Public Types | |
enum | LOCATION { LOC_HEAD = 0 , LOC_BODY , LOC_TAIL } |
Location where the message is to be reported. More... | |
Public Member Functions | |
virtual REPORTER & | Report (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0 |
Report a string with a given severity. | |
virtual REPORTER & | ReportTail (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED) |
Places the report at the end of the list, for objects that support report ordering. | |
virtual REPORTER & | ReportHead (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED) |
Places the report at the beginning of the list for objects that support ordering. | |
REPORTER & | Report (const char *aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED) |
REPORTER & | operator<< (const wxString &aText) |
virtual bool | HasMessage () const =0 |
Returns true if the reporter client is non-empty. | |
virtual bool | HasMessageOfSeverity (int aSeverityMask) const |
Returns true if the reporter has one or more messages matching the specified severity mask. | |
virtual EDA_UNITS | GetUnits () const |
virtual | ~REPORTER () |
A pure virtual class used to derive REPORTER objects from.
The purpose of the REPORTER object is to offer a way for a procedural function to report multiple errors without having to:
the reporter has 4 severity levels (flags) tagging the messages:
They are indicators for the message formatting and displaying code, filtering is not made here.
Definition at line 71 of file reporter.h.
enum REPORTER::LOCATION |
Location where the message is to be reported.
LOC_HEAD messages are printed before all others (typically intro messages) LOC_BODY messages are printed in the middle LOC_TAIL messages are printed after all others (typically status messages)
Enumerator | |
---|---|
LOC_HEAD | |
LOC_BODY | |
LOC_TAIL |
Definition at line 80 of file reporter.h.
|
inlinevirtual |
Definition at line 135 of file reporter.h.
|
inlinevirtual |
Reimplemented in WX_HTML_REPORT_BOX.
Definition at line 130 of file reporter.h.
|
pure virtual |
Returns true if the reporter client is non-empty.
Implemented in WX_HTML_REPORT_BOX, WX_HTML_PANEL_REPORTER, SIM_THREAD_REPORTER, WX_TEXT_CTRL_REPORTER, WX_STRING_REPORTER, NULL_REPORTER, CLI_REPORTER, STDOUT_REPORTER, WXLOG_REPORTER, STATUSBAR_REPORTER, INFOBAR_REPORTER, KI_TEST::CONSOLE_MSG_REPORTER, CONSOLE_MSG_REPORTER, TEST_NETLIST_EXPORTER_SPICE_FIXTURE::SPICE_TEST_REPORTER, TEST_NETLIST_EXPORTER_SPICE_FIXTURE::SPICE_TEST_REPORTER, and CONSOLE_MSG_REPORTER.
Referenced by HasMessageOfSeverity(), and DRC_RULES_PARSER::Parse().
|
virtual |
Returns true if the reporter has one or more messages matching the specified severity mask.
Reimplemented in WX_HTML_PANEL_REPORTER, and WX_STRING_REPORTER.
Definition at line 53 of file reporter.cpp.
References HasMessage().
Referenced by DIALOG_SIM_MODEL< T >::loadLibrary(), NETLIST_EXPORTER_SPICE::ReadSchematicAndLibraries(), and SIM_LIB_MGR::SetLibrary().
|
inline |
Definition at line 117 of file reporter.h.
REPORTER & REPORTER::Report | ( | const char * | aText, |
SEVERITY | aSeverity = RPT_SEVERITY_UNDEFINED |
||
) |
Definition at line 46 of file reporter.cpp.
References From_UTF8(), and Report().
|
pure virtual |
Report a string with a given severity.
aText | is the string to report. |
aSeverity | is an indicator ( RPT_UNDEFINED, RPT_INFO, RPT_WARNING, RPT_ERROR, RPT_ACTION ) used to filter and format messages |
Implemented in CLI_REPORTER, STDOUT_REPORTER, WXLOG_REPORTER, WX_HTML_REPORT_BOX, WX_HTML_PANEL_REPORTER, SIM_THREAD_REPORTER, WX_TEXT_CTRL_REPORTER, WX_STRING_REPORTER, NULL_REPORTER, STATUSBAR_REPORTER, INFOBAR_REPORTER, KI_TEST::CONSOLE_MSG_REPORTER, CONSOLE_MSG_REPORTER, TEST_NETLIST_EXPORTER_SPICE_FIXTURE::SPICE_TEST_REPORTER, TEST_NETLIST_EXPORTER_SPICE_FIXTURE::SPICE_TEST_REPORTER, and CONSOLE_MSG_REPORTER.
Referenced by GERBER_JOBFILE_WRITER::addJSONFilesAttributes(), GERBER_JOBFILE_WRITER::addJSONMaterialStackup(), SCH_IO_ALTIUM::AddLibTextBox(), BOARD_NETLIST_UPDATER::addNewFootprint(), SCH_EDIT_FRAME::AnnotateSymbols(), DIALOG_PLOT::applyPlotSettings(), PROJECT_ARCHIVER::Archive(), PROJECT_ARCHIVER::AreZipArchivesIdentical(), DIALOG_SYMBOL_REMAP::backupProject(), NGSPICE::cbSendChar(), TRACKS_CLEANER::CleanupBoard(), DRC_RULE_CONDITION::Compile(), ALTIUM_PCB::ConvertComponentBody6ToFootprintItem(), PCB_IO_MGR::ConvertLibrary(), ALTIUM_PCB::ConvertPads6ToBoardItemOnNonCopper(), ALTIUM_PCB::ConvertPads6ToFootprintItemOnCopper(), ALTIUM_PCB::ConvertPads6ToFootprintItemOnNonCopper(), ALTIUM_PCB::ConvertShapeBasedRegions6ToBoardItem(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItem(), ALTIUM_PCB::ConvertTexts6ToBoardItem(), ALTIUM_PCB::ConvertTexts6ToFootprintItem(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), SIM_MODEL::Create(), DIALOG_GEN_FOOTPRINT_POSITION::CreateAsciiFiles(), EXCELLON_WRITER::CreateDrillandMapFilesSet(), GERBER_WRITER::CreateDrillandMapFilesSet(), SCH_PLOTTER::createDXFFiles(), DIALOG_GEN_FOOTPRINT_POSITION::CreateGerberFiles(), SCH_PLOTTER::createHPGLFiles(), GERBER_JOBFILE_WRITER::CreateJobFile(), BOARD_ADAPTER::createLayers(), GENDRILL_WRITER_BASE::CreateMapFilesSet(), SIM_LIB_MGR::CreateModel(), SCH_PLOTTER::createPDFFile(), SCH_PLOTTER::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), SCH_PLOTTER::createPSFiles(), SCH_PLOTTER::createSVGFiles(), SCH_EDIT_FRAME::DeleteAnnotation(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), EESCHEMA_JOBS_HANDLER::doSymExportSvg(), EnsureFileDirectoryExists(), DRC_RULE_CONDITION::EvaluateFor(), DIALOG_EXPORT_SVG::ExportSVGFile(), fontconfig::FONTCONFIG::FindFont(), FOOTPRINT::FootprintNeedsUpdate(), HYPERLYNX_EXPORTER::formatPadShape(), LTSPICE_SCHEMATIC::GetAscAndAsyFilePaths(), PCBNEW_JOBS_HANDLER::getBoard(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), ALTIUM_PCB::GetKicadLayersToIterate(), CADSTAR_SCH_ARCHIVE_LOADER::getLocationOfNetElement(), EESCHEMA_JOBS_HANDLER::getSchematic(), HelperGeneratePowerPortGraphics(), ALTIUM_PCB::HelperParseDimensions6Center(), ALTIUM_PCB::HelperParseDimensions6Datum(), ALTIUM_PCB::HelperParseDimensions6Leader(), ALTIUM_PCB::HelperParseDimensions6Linear(), ALTIUM_PCB::HelperParseDimensions6Radial(), ALTIUM_PCB::HelperParsePad6NonCopper(), ALTIUM_PCB::HelperSetTextboxAlignmentAndPos(), EESCHEMA_JOBS_HANDLER::InitRenderSettings(), BOARD_ADAPTER::InitSettings(), EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), PCBNEW_JOBS_HANDLER::JobExportFpSvg(), PCBNEW_JOBS_HANDLER::JobExportFpUpgrade(), PCBNEW_JOBS_HANDLER::JobExportGencad(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), EESCHEMA_JOBS_HANDLER::JobSchErc(), EESCHEMA_JOBS_HANDLER::JobSymExportSvg(), EESCHEMA_JOBS_HANDLER::JobSymUpgrade(), PNS_LOG_FILE::Load(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), LTSPICE_SCHEMATIC::Load(), RENDER_3D_OPENGL::load3dModels(), CADSTAR_SCH_ARCHIVE_LOADER::loadChildSheets(), CADSTAR_SCH_ARCHIVE_LOADER::loadDocumentationSymbols(), PCB_EDIT_FRAME::LoadFootprints(), CADSTAR_SCH_ARCHIVE_LOADER::loadLibPart(), PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet(), CADSTAR_SCH_ARCHIVE_LOADER::loadPartsLibrary(), SCH_IO_LTSPICE::LoadSchematicFile(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbol(), CADSTAR_SCH_ARCHIVE_LOADER::loadSchematicSymbolInstances(), CADSTAR_SCH_ARCHIVE_LOADER::loadTextVariables(), PNS_TEST_DEBUG_DECORATOR::Message(), DIALOG_IMPORT_NETLIST::onFilenameChanged(), padNeedsUpdate(), ALTIUM_PCB::Parse(), DRC_RULES_PARSER::Parse(), SCH_IO_ALTIUM::ParseAltiumSch(), SCH_IO_ALTIUM::ParseArc(), SCH_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseCircle(), ALTIUM_PCB::ParseClasses6Data(), SCH_IO_ALTIUM::ParseComponent(), ALTIUM_PCB::ParseComponentsBodies6Data(), SCH_IO_ALTIUM::ParseDesignator(), ALTIUM_PCB::ParseDimensions6Data(), SCH_IO_ALTIUM::ParseEllipse(), SCH_IO_ALTIUM::ParseEllipticalArc(), SPICE_LIBRARY_PARSER::parseFile(), SCH_IO_ALTIUM::ParseFileName(), ALTIUM_PCB::ParseFootprint(), SCH_IO_ALTIUM::ParseHarnessConnector(), SCH_IO_ALTIUM::ParseHarnessEntry(), SCH_IO_ALTIUM::ParseHarnessPort(), SCH_IO_ALTIUM::ParseHarnessType(), SCH_IO_ALTIUM::ParseImage(), SCH_IO_ALTIUM::ParseImplementation(), SCH_IO_ALTIUM::ParseLabel(), SCH_IO_ALTIUM::ParseLibFile(), SCH_IO_ALTIUM::ParseLine(), ALTIUM_PCB::ParseModelsData(), SCH_IO_ALTIUM::ParsePieChart(), SCH_IO_ALTIUM::ParsePin(), SCH_IO_ALTIUM::ParsePolygon(), ALTIUM_PCB::ParsePolygons6Data(), SCH_IO_ALTIUM::ParsePolyline(), SCH_IO_ALTIUM::ParsePort(), SCH_IO_ALTIUM::ParsePowerPort(), SCH_IO_ALTIUM::ParseRecord(), SCH_IO_ALTIUM::ParseRectangle(), SCH_IO_ALTIUM::ParseRoundRectangle(), SCH_IO_ALTIUM::ParseSheetEntry(), SCH_IO_ALTIUM::ParseSheetName(), SCH_IO_ALTIUM::ParseSignalHarness(), SCH_IO_ALTIUM::ParseStorage(), DRC_RULES_PARSER::parseValueWithUnits(), ALTIUM_PCB::ParseVias6Data(), DIALOG_PLOT::Plot(), RENDER_3D_RAYTRACE_BASE::postProcessShading(), SIM_LIBRARY_IBIS::ReadFile(), NETLIST_EXPORTER_SPICE::ReadSchematicAndLibraries(), SIM_MODEL::ReadTypeFromFields(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_RAYTRACE_GL::Redraw(), RENDER_3D_RAYTRACE_RAM::Redraw(), RENDER_3D_OPENGL::reload(), RENDER_3D_RAYTRACE_BASE::Reload(), DIALOG_SYMBOL_REMAP::remapSymbolsToLibTable(), RENDER_3D_RAYTRACE_BASE::render(), RENDER_3D_RAYTRACE_BASE::renderTracing(), BOARD_NETLIST_UPDATER::replaceFootprint(), PNS_LOG_PLAYER::ReplayLog(), Report(), IO_BASE::Report(), IBIS_ANY::Report(), DRC_ENGINE::ReportAux(), BOARD_INSPECTION_TOOL::reportCompileError(), DRC_RULES_PARSER::reportDeprecation(), DRC_RULES_PARSER::reportError(), BOARD_INSPECTION_TOOL::reportHeader(), DRC_ENGINE::ReportViolation(), SIM_LIB_MGR::ResolveLibraryPath(), JOBS_RUNNER::RunJobsForOutput(), SIM_LIB_MGR::SetLibrary(), BOARD_NETLIST_UPDATER::testConnectivity(), DIALOG_EXPORT_NETLIST::TransferDataFromWindow(), PROJECT_ARCHIVER::Unarchive(), GERBVIEW_FRAME::unarchiveFiles(), BOARD_NETLIST_UPDATER::updateComponentClass(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), BOARD_NETLIST_UPDATER::updateCopperZoneNets(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), BOARD_NETLIST_UPDATER::UpdateNetlist(), NETLIST_EXPORTER_ALLEGRO::WriteNetlist(), NETLIST_EXPORTER_CADSTAR::WriteNetlist(), NETLIST_EXPORTER_KICAD::WriteNetlist(), NETLIST_EXPORTER_ORCADPCB2::WriteNetlist(), NETLIST_EXPORTER_PADS::WriteNetlist(), SCH_EDIT_FRAME::WriteNetListFile(), and zoneNeedsUpdate().
|
inlinevirtual |
Places the report at the beginning of the list for objects that support ordering.
Reimplemented in WX_HTML_PANEL_REPORTER.
Definition at line 109 of file reporter.h.
Referenced by BACK_ANNOTATE::applyChangelist(), BACK_ANNOTATE::getPcbModulesFromString(), DIALOG_IMPORT_NETLIST::loadNetlist(), DIALOG_ERC::OnRunERCClick(), BACK_ANNOTATE::processNetNameChange(), DIALOG_EXPORT_NETLIST::TransferDataFromWindow(), and SCH_EDIT_FRAME::WriteNetListFile().
|
inlinevirtual |
Places the report at the end of the list, for objects that support report ordering.
Reimplemented in WX_HTML_PANEL_REPORTER.
Definition at line 100 of file reporter.h.
Referenced by SCH_EDIT_FRAME::AnnotateSymbols(), BACK_ANNOTATE::BackAnnotateSymbols(), BACK_ANNOTATE::checkForUnusedSymbols(), EXCELLON_WRITER::CreateDrillandMapFilesSet(), GERBER_WRITER::CreateDrillandMapFilesSet(), SCH_PLOTTER::createDXFFiles(), SCH_PLOTTER::createHPGLFiles(), SCH_PLOTTER::createPDFFile(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), SCH_PLOTTER::createPSFiles(), SCH_PLOTTER::createSVGFiles(), BACK_ANNOTATE::getChangeList(), DIALOG_PLOT::Plot(), GERBER_JOBFILE_READER::ReadGerberJobFile(), BOARD_NETLIST_UPDATER::UpdateNetlist(), SCH_SCREEN::UpdateSymbolLinks(), and SCH_EDIT_FRAME::WriteNetListFile().