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

An simple container class that lets us dispatch output jobs to kifaces. More...

#include <job.h>

Inheritance diagram for JOB:
JOB_EXPORT_PCB_3D JOB_EXPORT_PCB_DRILL JOB_EXPORT_PCB_GENCAD JOB_EXPORT_PCB_IPC2581 JOB_EXPORT_PCB_ODB JOB_EXPORT_PCB_PLOT JOB_EXPORT_PCB_POS JOB_EXPORT_SCH_BOM JOB_EXPORT_SCH_NETLIST JOB_EXPORT_SCH_PLOT JOB_EXPORT_SCH_PYTHONBOM JOB_FP_EXPORT_SVG JOB_FP_UPGRADE JOB_PCB_RENDER JOB_RC JOB_SPECIAL_COPYFILES JOB_SPECIAL_EXECUTE JOB_SYM_EXPORT_SVG JOB_SYM_UPGRADE

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_OUTPUTm_outputs
 

Detailed Description

An simple container class that lets us dispatch output jobs to kifaces.

Definition at line 181 of file job.h.

Constructor & Destructor Documentation

◆ JOB()

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.

◆ ~JOB()

JOB::~JOB ( )
virtual

Definition at line 51 of file job.cpp.

References m_params.

Member Function Documentation

◆ AddOutput()

void JOB::AddOutput ( wxString  aOutputPath)
inline

Definition at line 209 of file job.h.

Referenced by PCBNEW_JOBS_HANDLER::JobExportPos().

◆ ClearExistingOutputs()

void JOB::ClearExistingOutputs ( )
inline

Definition at line 207 of file job.h.

Referenced by JOB_DISPATCHER::RunJob().

◆ FromJson()

void JOB::FromJson ( const nlohmann::json &  j)
virtual

Definition at line 60 of file job.cpp.

References m_params.

Referenced by from_json().

◆ GetConfiguredOutputPath()

◆ GetDefaultDescription()

◆ GetFullOutputPath()

◆ GetOutputPathIsDirectory()

bool JOB::GetOutputPathIsDirectory ( ) const
inline

Definition at line 247 of file job.h.

Referenced by EESCHEMA_JOBS_HANDLER::JobExportPlot().

◆ GetOutputs()

const std::vector< JOB_OUTPUT > & JOB::GetOutputs ( )
inline

Definition at line 208 of file job.h.

◆ GetParams()

const std::vector< JOB_PARAM_BASE * > & JOB::GetParams ( )
inline

Definition at line 205 of file job.h.

◆ GetSettingsDialogTitle()

◆ GetType()

const std::string & JOB::GetType ( ) const
inline

Definition at line 188 of file job.h.

Referenced by JOB_DISPATCHER::HandleJobConfig(), and JOB_DISPATCHER::RunJob().

◆ GetVarOverrides()

◆ GetWorkingOutputPath()

wxString JOB::GetWorkingOutputPath ( ) const
inline

Returns the working output path for the job, if one has been set.

Definition at line 237 of file job.h.

◆ SetConfiguredOutputPath()

◆ SetTempOutputDirectory()

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.

◆ SetTitleBlock()

◆ SetVarOverrides()

void JOB::SetVarOverrides ( const std::map< wxString, wxString > &  aVarOverrides)
inline

Definition at line 192 of file job.h.

Referenced by CLI::PCB_EXPORT_GERBER_COMMAND::populateJob().

◆ SetWorkingOutputPath()

◆ ToJson()

void JOB::ToJson ( nlohmann::json &  j) const
virtual

Definition at line 67 of file job.cpp.

References m_params.

Referenced by to_json().

Member Data Documentation

◆ m_description

wxString JOB::m_description
protected

Definition at line 258 of file job.h.

Referenced by JOB().

◆ m_outputPath

wxString JOB::m_outputPath
protected

Definition at line 256 of file job.h.

Referenced by GetFullOutputPath(), JOB(), and SetConfiguredOutputPath().

◆ m_outputPathIsDirectory

bool JOB::m_outputPathIsDirectory
protected

Definition at line 257 of file job.h.

Referenced by GetFullOutputPath(), and JOB().

◆ m_outputs

std::vector<JOB_OUTPUT> JOB::m_outputs
protected

Definition at line 263 of file job.h.

◆ m_params

◆ m_tempOutputDirectory

wxString JOB::m_tempOutputDirectory
protected

Definition at line 254 of file job.h.

Referenced by GetFullOutputPath(), and SetTempOutputDirectory().

◆ m_titleBlock

TITLE_BLOCK JOB::m_titleBlock
protected

Definition at line 252 of file job.h.

Referenced by GetFullOutputPath().

◆ m_type

std::string JOB::m_type
protected

Definition at line 250 of file job.h.

◆ m_varOverrides

std::map<wxString, wxString> JOB::m_varOverrides
protected

Definition at line 251 of file job.h.

◆ m_workingOutputPath

wxString JOB::m_workingOutputPath
protected

Definition at line 259 of file job.h.

Referenced by GetFullOutputPath().


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