KiCad PCB EDA Suite
Loading...
Searching...
No Matches
JOB_DISPATCHER Class Reference

#include <job_dispatcher.h>

Inheritance diagram for JOB_DISPATCHER:
EESCHEMA_JOBS_HANDLER PCBNEW_JOBS_HANDLER

Public Member Functions

 JOB_DISPATCHER (KIWAY *aKiway)
 
void Register (const std::string &aJobTypeName, std::function< int(JOB *job)> aHandler, std::function< bool(JOB *job, wxWindow *aParent)> aConfigHandler)
 
int RunJob (JOB *aJob, REPORTER *aReporter, PROGRESS_REPORTER *aProgressReporter)
 
bool HandleJobConfig (JOB *aJob, wxWindow *aParent)
 
void SetReporter (REPORTER *aReporter)
 
void SetProgressReporter (PROGRESS_REPORTER *aReporter)
 

Protected Attributes

KIWAYm_kiway
 
REPORTERm_reporter
 
PROGRESS_REPORTERm_progressReporter
 

Private Attributes

std::map< std::string, std::function< int(JOB *job)> > m_jobHandlers
 
std::map< std::string, std::function< bool(JOB *job, wxWindow *aParent)> > m_jobConfigHandlers
 

Detailed Description

Definition at line 36 of file job_dispatcher.h.

Constructor & Destructor Documentation

◆ JOB_DISPATCHER()

JOB_DISPATCHER::JOB_DISPATCHER ( KIWAY * aKiway)

Member Function Documentation

◆ HandleJobConfig()

bool JOB_DISPATCHER::HandleJobConfig ( JOB * aJob,
wxWindow * aParent )

Definition at line 66 of file job_dispatcher.cpp.

References JOB::GetType(), and m_jobConfigHandlers.

◆ Register()

void JOB_DISPATCHER::Register ( const std::string & aJobTypeName,
std::function< int(JOB *job)> aHandler,
std::function< bool(JOB *job, wxWindow *aParent)> aConfigHandler )

◆ RunJob()

int JOB_DISPATCHER::RunJob ( JOB * aJob,
REPORTER * aReporter,
PROGRESS_REPORTER * aProgressReporter )

◆ SetProgressReporter()

void JOB_DISPATCHER::SetProgressReporter ( PROGRESS_REPORTER * aReporter)

Definition at line 84 of file job_dispatcher.cpp.

References m_progressReporter.

◆ SetReporter()

void JOB_DISPATCHER::SetReporter ( REPORTER * aReporter)

Definition at line 77 of file job_dispatcher.cpp.

References m_reporter.

Member Data Documentation

◆ m_jobConfigHandlers

std::map<std::string, std::function<bool( JOB* job, wxWindow* aParent )> > JOB_DISPATCHER::m_jobConfigHandlers
private

Definition at line 55 of file job_dispatcher.h.

Referenced by HandleJobConfig(), and Register().

◆ m_jobHandlers

std::map<std::string, std::function<int( JOB* job )> > JOB_DISPATCHER::m_jobHandlers
private

Definition at line 53 of file job_dispatcher.h.

Referenced by Register(), and RunJob().

◆ m_kiway

◆ m_progressReporter

◆ m_reporter

REPORTER* JOB_DISPATCHER::m_reporter
protected

Definition at line 49 of file job_dispatcher.h.

Referenced by PCBNEW_JOBS_HANDLER::convertLayerArg(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), EESCHEMA_JOBS_HANDLER::doSymExportSvg(), PCBNEW_JOBS_HANDLER::getBoard(), EESCHEMA_JOBS_HANDLER::getSchematic(), EESCHEMA_JOBS_HANDLER::InitRenderSettings(), JOB_DISPATCHER(), EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportFpSvg(), PCBNEW_JOBS_HANDLER::JobExportFpUpgrade(), PCBNEW_JOBS_HANDLER::JobExportGencad(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), PCBNEW_JOBS_HANDLER::JobExportIpcD356(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), PCBNEW_JOBS_HANDLER::JobExportOdb(), PCBNEW_JOBS_HANDLER::JobExportPdf(), EESCHEMA_JOBS_HANDLER::JobExportPlot(), PCBNEW_JOBS_HANDLER::JobExportPos(), PCBNEW_JOBS_HANDLER::JobExportPs(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStats(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), PCBNEW_JOBS_HANDLER::JobImport(), EESCHEMA_JOBS_HANDLER::JobSchErc(), EESCHEMA_JOBS_HANDLER::JobSymExportSvg(), EESCHEMA_JOBS_HANDLER::JobSymUpgrade(), EESCHEMA_JOBS_HANDLER::JobUpgrade(), PCBNEW_JOBS_HANDLER::JobUpgrade(), PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet(), PCBNEW_JOBS_HANDLER::PCBNEW_JOBS_HANDLER(), RunJob(), and SetReporter().


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