KiCad PCB EDA Suite
REPORTER Class Referenceabstract

REPORTER is a pure virtual class used to derive REPORTER objects from. More...

#include <reporter.h>

Inheritance diagram for REPORTER:
INFOBAR_REPORTER NULL_REPORTER SPICE_REPORTER STATUSBAR_REPORTER STDOUT_REPORTER WX_HTML_PANEL_REPORTER WX_STRING_REPORTER WX_TEXT_CTRL_REPORTER

Public Types

enum  LOCATION { LOC_HEAD = 0, LOC_BODY, LOC_TAIL }
 Location where the message is to be reported. More...
 

Public Member Functions

virtual REPORTERReport (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
 Function Report is a pure virtual function to override in the derived object. More...
 
virtual REPORTERReportTail (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 Function ReportTail Places the report at the end of the list, for objects that support report ordering. More...
 
virtual REPORTERReportHead (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 Function ReportHead Places the report at the beginning of the list for objects that support ordering. More...
 
REPORTERReport (const char *aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 
REPORTERoperator<< (const wxString &aText)
 
REPORTERoperator<< (const wxChar *aText)
 
REPORTERoperator<< (wxChar aChar)
 
REPORTERoperator<< (const char *aText)
 
virtual bool HasMessage () const =0
 Function HasMessage Returns true if the reporter client is non-empty. More...
 
virtual ~REPORTER ()
 

Detailed Description

REPORTER is 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:

  • know too much about the caller's UI, i.e. wx.
  • stop after the first error

the reporter has 4 severity levels (flags) tagging the messages:

  • information
  • warning
  • error
  • action (i.e. indication of changes - add component, change footprint, etc. ) They are indicators for the message formatting and displaying code, filtering is not made here.

Definition at line 64 of file reporter.h.

Member Enumeration Documentation

◆ 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 73 of file reporter.h.

73  {
74  LOC_HEAD = 0,
75  LOC_BODY,
76  LOC_TAIL
77  };

Constructor & Destructor Documentation

◆ ~REPORTER()

virtual REPORTER::~REPORTER ( )
inlinevirtual

Definition at line 121 of file reporter.h.

122  {
123  }

Member Function Documentation

◆ HasMessage()

virtual bool REPORTER::HasMessage ( ) const
pure virtual

◆ operator<<() [1/4]

REPORTER& REPORTER::operator<< ( const wxString &  aText)
inline

Definition at line 110 of file reporter.h.

110 { return Report( aText ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

◆ operator<<() [2/4]

REPORTER& REPORTER::operator<< ( const wxChar *  aText)
inline

Definition at line 111 of file reporter.h.

111 { return Report( wxString( aText ) ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

◆ operator<<() [3/4]

REPORTER& REPORTER::operator<< ( wxChar  aChar)
inline

Definition at line 112 of file reporter.h.

112 { return Report( wxString( aChar ) ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

◆ operator<<() [4/4]

REPORTER& REPORTER::operator<< ( const char *  aText)
inline

Definition at line 113 of file reporter.h.

113 { return Report( aText ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

◆ Report() [1/2]

virtual REPORTER& REPORTER::Report ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
pure virtual

Function Report is a pure virtual function to override in the derived object.

Parameters
aTextis the string to report.
aSeverityis an indicator ( RPT_UNDEFINED, RPT_INFO, RPT_WARNING, RPT_ERROR, RPT_ACTION ) used to filter and format messages

Implemented in INFOBAR_REPORTER, STATUSBAR_REPORTER, STDOUT_REPORTER, NULL_REPORTER, WX_HTML_PANEL_REPORTER, WX_STRING_REPORTER, WX_TEXT_CTRL_REPORTER, and SIM_THREAD_REPORTER.

Referenced by GERBER_JOBFILE_WRITER::addJSONFilesAttributes(), GERBER_JOBFILE_WRITER::addJSONMaterialStackup(), BOARD_NETLIST_UPDATER::addNewComponent(), SCH_EDIT_FRAME::AnnotateComponents(), DIALOG_PLOT::applyPlotSettings(), PROJECT_ARCHIVER::Archive(), DIALOG_SYMBOL_REMAP::backupProject(), NGSPICE::cbSendChar(), SCH_REFERENCE_LIST::CheckAnnotation(), DIALOG_GEN_FOOTPRINT_POSITION::CreateAsciiFiles(), GERBER_WRITER::CreateDrillandMapFilesSet(), EXCELLON_WRITER::CreateDrillandMapFilesSet(), DIALOG_PLOT_SCHEMATIC::CreateDXFFile(), DIALOG_GEN_FOOTPRINT_POSITION::CreateGerberFiles(), DIALOG_PLOT_SCHEMATIC::createHPGLFile(), GERBER_JOBFILE_WRITER::CreateJobFile(), BOARD_ADAPTER::createLayers(), GENDRILL_WRITER_BASE::CreateMapFilesSet(), DIALOG_PLOT_SCHEMATIC::createPDFFile(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), DIALOG_PLOT_SCHEMATIC::createPSFile(), DIALOG_PLOT_SCHEMATIC::createSVGFile(), BOARD_NETLIST_UPDATER::deleteSinglePadNets(), BOARD_NETLIST_UPDATER::deleteUnusedComponents(), EnsureFileDirectoryExists(), DIALOG_EXPORT_SVG::ExportSVGFile(), HYPERLYNX_EXPORTER::formatPadShape(), DISPLAY_FOOTPRINTS_FRAME::GetModule(), BOARD_ADAPTER::InitSettings(), C3D_RENDER_OGL_LEGACY::load_3D_models(), PCB_EDIT_FRAME::LoadFootprints(), DIALOG_NETLIST::onFilenameChanged(), operator<<(), DIALOG_PLOT::Plot(), C3D_RENDER_RAYTRACING::Redraw(), C3D_RENDER_OGL_LEGACY::Redraw(), C3D_RENDER_OGL_LEGACY::reload(), C3D_RENDER_RAYTRACING::reload(), DIALOG_SYMBOL_REMAP::remapSymbolsToLibTable(), C3D_RENDER_RAYTRACING::render(), BOARD_NETLIST_UPDATER::replaceComponent(), Report(), ReportHead(), ReportTail(), C3D_RENDER_RAYTRACING::rt_render_post_process_shade(), C3D_RENDER_RAYTRACING::rt_render_tracing(), BOARD_NETLIST_UPDATER::testConnectivity(), PROJECT_ARCHIVER::Unarchive(), GERBVIEW_FRAME::unarchiveFiles(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), BOARD_NETLIST_UPDATER::updateComponentParameters(), BOARD_NETLIST_UPDATER::updateCopperZoneNets(), BOARD_NETLIST_UPDATER::UpdateNetlist(), and SCH_EDIT_FRAME::WriteNetListFile().

◆ Report() [2/2]

REPORTER & REPORTER::Report ( const char *  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)

Definition at line 33 of file reporter.cpp.

34 {
35  Report( FROM_UTF8( aText ) );
36  return *this;
37 }
static wxString FROM_UTF8(const char *cstring)
function FROM_UTF8 converts a UTF8 encoded C string to a wxString for all wxWidgets build modes.
Definition: macros.h:114
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References FROM_UTF8(), and Report().

◆ ReportHead()

virtual REPORTER& REPORTER::ReportHead ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
inlinevirtual

Function ReportHead Places the report at the beginning of the list for objects that support ordering.

Reimplemented in WX_HTML_PANEL_REPORTER.

Definition at line 103 of file reporter.h.

104  {
105  return Report( aText, aSeverity );
106  }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

Referenced by BACK_ANNOTATE::applyChangelist(), BACK_ANNOTATE::getPcbModulesFromString(), DIALOG_NETLIST::loadNetlist(), BACK_ANNOTATE::processNetNameChange(), and SCH_EDIT_FRAME::WriteNetListFile().

◆ ReportTail()

virtual REPORTER& REPORTER::ReportTail ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
inlinevirtual

Function ReportTail Places the report at the end of the list, for objects that support report ordering.

Reimplemented in WX_HTML_PANEL_REPORTER.

Definition at line 94 of file reporter.h.

95  {
96  return Report( aText, aSeverity );
97  }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References Report().

Referenced by SCH_EDIT_FRAME::AnnotateComponents(), BACK_ANNOTATE::BackAnnotateSymbols(), BACK_ANNOTATE::checkForUnusedSymbols(), BACK_ANNOTATE::checkSharedSchematicErrors(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), BACK_ANNOTATE::getChangeList(), GERBER_JOBFILE_READER::ReadGerberJobFile(), DIALOG_ERC::TestErc(), BOARD_NETLIST_UPDATER::UpdateNetlist(), SCH_SCREEN::UpdateSymbolLinks(), and SCH_EDIT_FRAME::WriteNetListFile().


The documentation for this class was generated from the following files: