KiCad PCB EDA Suite
|
An simple container class that lets us dispatch output jobs to kifaces. More...
#include <job.h>
Public Member Functions | |
JOB (const std::string &aType, bool aOutputIsDirectory) | |
virtual | ~JOB () |
const std::string & | GetType () const |
const std::map< wxString, wxString > & | GetVarOverrides () const |
void | SetVarOverrides (const std::map< wxString, wxString > &aVarOverrides) |
void | SetTitleBlock (const TITLE_BLOCK &aTitleBlock) |
virtual void | FromJson (const nlohmann::json &j) |
virtual void | ToJson (nlohmann::json &j) const |
virtual wxString | GetDefaultDescription () const |
virtual wxString | GetSettingsDialogTitle () const |
const std::vector< JOB_PARAM_BASE * > & | GetParams () |
void | ClearExistingOutputs () |
const std::vector< JOB_OUTPUT > & | GetOutputs () |
void | AddOutput (wxString aOutputPath) |
void | SetTempOutputDirectory (const wxString &aBase) |
Sets the temporary output directory for the job, this is used to prefix with a given output path when GetFullOutputPath is called. | |
void | SetConfiguredOutputPath (const wxString &aPath) |
Sets the configured output path for the job, this path is always saved to file. | |
wxString | GetConfiguredOutputPath () const |
Returns the configured output path for the job. | |
void | SetWorkingOutputPath (const wxString &aPath) |
Sets a transient output path for the job, it takes priority over the configured output path when GetFullOutputPath is called. | |
wxString | GetWorkingOutputPath () const |
Returns the working output path for the job, if one has been set. | |
wxString | GetFullOutputPath (PROJECT *aProject) const |
Returns the full output path for the job, taking into account the configured output path, any configured working path and the temporary output directory. | |
bool | GetOutputPathIsDirectory () const |
Protected Attributes | |
std::string | m_type |
std::map< wxString, wxString > | m_varOverrides |
TITLE_BLOCK | m_titleBlock |
wxString | m_tempOutputDirectory |
wxString | m_outputPath |
bool | m_outputPathIsDirectory |
wxString | m_description |
wxString | m_workingOutputPath |
std::vector< JOB_PARAM_BASE * > | m_params |
std::vector< JOB_OUTPUT > | m_outputs |
An simple container class that lets us dispatch output jobs to kifaces.
JOB::JOB | ( | const std::string & | aType, |
bool | aOutputIsDirectory | ||
) |
Definition at line 26 of file job.cpp.
References m_description, m_outputPath, m_outputPathIsDirectory, and m_params.
|
inline |
Definition at line 209 of file job.h.
Referenced by PCBNEW_JOBS_HANDLER::JobExportPos().
|
inline |
Definition at line 207 of file job.h.
Referenced by JOB_DISPATCHER::RunJob().
|
virtual |
|
inline |
Returns the configured output path for the job.
Definition at line 226 of file job.h.
Referenced by DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_NETLIST::DIALOG_EXPORT_NETLIST(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_EXPORT_ODBPP::Init(), DIALOG_GEN_FOOTPRINT_POSITION::initDialog(), DIALOG_PLOT_SCHEMATIC::initDlg(), EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGencad(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), PCBNEW_JOBS_HANDLER::JobExportOdb(), PCBNEW_JOBS_HANDLER::JobExportPdf(), PCBNEW_JOBS_HANDLER::JobExportPos(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), EESCHEMA_JOBS_HANDLER::JobSchErc(), PCB_PLOTTER::PlotJobToPlotOpts(), JOBS_RUNNER::runSpecialExecute(), DIALOG_RC_JOB::TransferDataToWindow(), DIALOG_EXECUTECOMMAND_JOB_SETTINGS::TransferDataToWindow(), DIALOG_GENDRILL::TransferDataToWindow(), and DIALOG_RENDER_JOB::TransferDataToWindow().
|
virtual |
Reimplemented in JOB_EXPORT_PCB_3D, JOB_EXPORT_PCB_DRILL, JOB_EXPORT_PCB_DXF, JOB_EXPORT_PCB_GERBER, JOB_EXPORT_PCB_GERBERS, JOB_EXPORT_PCB_IPC2581, JOB_EXPORT_PCB_ODB, JOB_EXPORT_PCB_PDF, JOB_EXPORT_PCB_POS, JOB_EXPORT_PCB_SVG, JOB_EXPORT_SCH_BOM, JOB_EXPORT_SCH_NETLIST, JOB_EXPORT_SCH_PLOT_PDF, JOB_EXPORT_SCH_PLOT_DXF, JOB_EXPORT_SCH_PLOT_SVG, JOB_EXPORT_SCH_PLOT_PS, JOB_EXPORT_SCH_PLOT_HPGL, JOB_EXPORT_SCH_PYTHONBOM, JOB_PCB_DRC, JOB_PCB_RENDER, JOB_SCH_ERC, JOB_SPECIAL_COPYFILES, and JOB_SPECIAL_EXECUTE.
wxString JOB::GetFullOutputPath | ( | PROJECT * | aProject | ) | const |
Returns the full output path for the job, taking into account the configured output path, any configured working path and the temporary output directory.
Additionally variable resolution will take place
Definition at line 100 of file job.cpp.
References ExpandTextVars(), m_outputPath, m_outputPathIsDirectory, m_tempOutputDirectory, m_titleBlock, m_workingOutputPath, PrependDirectoryToPath(), PROJECT::TextVarResolver(), and TITLE_BLOCK::TextVarResolver().
Referenced by DIALOG_EXPORT_ODBPP::GenerateODBPPFiles(), EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGencad(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), PCBNEW_JOBS_HANDLER::JobExportPdf(), EESCHEMA_JOBS_HANDLER::JobExportPlot(), PCBNEW_JOBS_HANDLER::JobExportPos(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), EESCHEMA_JOBS_HANDLER::JobSchErc(), JOBS_RUNNER::runSpecialCopyFiles(), and JOBS_RUNNER::runSpecialExecute().
|
inline |
Definition at line 247 of file job.h.
Referenced by EESCHEMA_JOBS_HANDLER::JobExportPlot().
|
inline |
|
inline |
|
virtual |
Reimplemented in JOB_EXPORT_PCB_3D, JOB_EXPORT_PCB_DRILL, JOB_EXPORT_PCB_DXF, JOB_EXPORT_PCB_GENCAD, JOB_EXPORT_PCB_GERBER, JOB_EXPORT_PCB_GERBERS, JOB_EXPORT_PCB_IPC2581, JOB_EXPORT_PCB_ODB, JOB_EXPORT_PCB_PDF, JOB_EXPORT_PCB_POS, JOB_EXPORT_PCB_SVG, JOB_EXPORT_SCH_BOM, JOB_EXPORT_SCH_NETLIST, JOB_EXPORT_SCH_PLOT_PDF, JOB_EXPORT_SCH_PLOT_DXF, JOB_EXPORT_SCH_PLOT_SVG, JOB_EXPORT_SCH_PLOT_PS, JOB_EXPORT_SCH_PLOT_HPGL, JOB_PCB_DRC, JOB_PCB_RENDER, and JOB_SCH_ERC.
Definition at line 80 of file job.cpp.
References _.
Referenced by DIALOG_PLOT::DIALOG_PLOT(), and DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC().
|
inline |
Definition at line 188 of file job.h.
Referenced by JOB_DISPATCHER::HandleJobConfig(), and JOB_DISPATCHER::RunJob().
|
inline |
Definition at line 190 of file job.h.
Referenced by PCBNEW_JOBS_HANDLER::doFpExportSvg(), EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), PCBNEW_JOBS_HANDLER::JobExportPdf(), EESCHEMA_JOBS_HANDLER::JobExportPlot(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), and EESCHEMA_JOBS_HANDLER::JobSchErc().
|
inline |
void JOB::SetConfiguredOutputPath | ( | const wxString & | aPath | ) |
Sets the configured output path for the job, this path is always saved to file.
Definition at line 153 of file job.cpp.
References m_outputPath.
Referenced by PCB_EDIT_FRAME::GenODBPPFiles(), EESCHEMA_JOBS_HANDLER::JobExportBom(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), EESCHEMA_JOBS_HANDLER::JobSchErc(), DIALOG_EXPORT_NETLIST::NetlistUpdateOpt(), DIALOG_EXPORT_STEP::onExportButton(), DIALOG_GEN_FOOTPRINT_POSITION::onGenerate(), DIALOG_SYMBOL_FIELDS_TABLE::OnOk(), DIALOG_PLOT_SCHEMATIC::OnPlotAll(), CLI::PCB_EXPORT_GERBER_COMMAND::populateJob(), JOBS_RUNNER::runSpecialExecute(), JOB_EXPORT_PCB_IPC2581::SetDefaultOutputPath(), JOB_EXPORT_PCB_ODB::SetDefaultOutputPath(), JOB_EXPORT_PCB_POS::SetDefaultOutputPath(), DIALOG_RC_JOB::TransferDataFromWindow(), DIALOG_EXECUTECOMMAND_JOB_SETTINGS::TransferDataFromWindow(), DIALOG_EXPORT_2581::TransferDataFromWindow(), DIALOG_EXPORT_ODBPP::TransferDataFromWindow(), DIALOG_GENDRILL::TransferDataFromWindow(), DIALOG_RENDER_JOB::TransferDataFromWindow(), and DIALOG_PLOT::transferPlotParamsToJob().
void JOB::SetTempOutputDirectory | ( | const wxString & | aBase | ) |
Sets the temporary output directory for the job, this is used to prefix with a given output path when GetFullOutputPath is called.
This is intended for use with running jobsets and otherwise has no impact on individual job runs outside jobsets.
Definition at line 86 of file job.cpp.
References m_tempOutputDirectory.
|
inline |
Definition at line 197 of file job.h.
Referenced by EESCHEMA_JOBS_HANDLER::JobExportBom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), PCBNEW_JOBS_HANDLER::JobExportOdb(), PCBNEW_JOBS_HANDLER::JobExportPdf(), EESCHEMA_JOBS_HANDLER::JobExportPlot(), PCBNEW_JOBS_HANDLER::JobExportPos(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), and EESCHEMA_JOBS_HANDLER::JobSchErc().
|
inline |
Definition at line 192 of file job.h.
Referenced by CLI::PCB_EXPORT_GERBER_COMMAND::populateJob().
|
inline |
Sets a transient output path for the job, it takes priority over the configured output path when GetFullOutputPath is called.
Definition at line 232 of file job.h.
Referenced by PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGencad(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), PCBNEW_JOBS_HANDLER::JobExportOdb(), PCBNEW_JOBS_HANDLER::JobExportPdf(), PCBNEW_JOBS_HANDLER::JobExportPos(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), and PCBNEW_JOBS_HANDLER::JobExportSvg().
|
virtual |
|
protected |
Definition at line 256 of file job.h.
Referenced by GetFullOutputPath(), JOB(), and SetConfiguredOutputPath().
|
protected |
Definition at line 257 of file job.h.
Referenced by GetFullOutputPath(), and JOB().
|
protected |
|
protected |
Definition at line 261 of file job.h.
Referenced by FromJson(), JOB(), JOB_EXPORT_PCB_3D::JOB_EXPORT_PCB_3D(), JOB_EXPORT_PCB_GERBER::JOB_EXPORT_PCB_GERBER(), JOB_EXPORT_PCB_GERBERS::JOB_EXPORT_PCB_GERBERS(), JOB_EXPORT_PCB_PLOT::JOB_EXPORT_PCB_PLOT(), JOB_EXPORT_SCH_BOM::JOB_EXPORT_SCH_BOM(), JOB_PCB_DRC::JOB_PCB_DRC(), JOB_SPECIAL_COPYFILES::JOB_SPECIAL_COPYFILES(), JOB_SPECIAL_EXECUTE::JOB_SPECIAL_EXECUTE(), ToJson(), and ~JOB().
|
protected |
Definition at line 254 of file job.h.
Referenced by GetFullOutputPath(), and SetTempOutputDirectory().
|
protected |
Definition at line 252 of file job.h.
Referenced by GetFullOutputPath().
|
protected |
Definition at line 259 of file job.h.
Referenced by GetFullOutputPath().