mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-04-14 12:59:34 +00:00
Force jobs to be instantiated in kicommon
This is important since these get passed between modules at runtime
This commit is contained in:
parent
d3e5517bfb
commit
2de38f8d75
common
CMakeLists.txt
jobs
job.cppjob.hjob_export_pcb_3d.cppjob_export_pcb_3d.hjob_export_pcb_drill.cppjob_export_pcb_drill.hjob_export_pcb_dxf.cppjob_export_pcb_dxf.hjob_export_pcb_gerber.cppjob_export_pcb_gerber.hjob_export_pcb_gerbers.cppjob_export_pcb_gerbers.hjob_export_pcb_pdf.cppjob_export_pcb_pdf.hjob_export_pcb_pos.cppjob_export_pcb_pos.hjob_export_pcb_svg.cppjob_export_pcb_svg.hjob_export_sch_bom.cppjob_export_sch_bom.hjob_export_sch_netlist.cppjob_export_sch_netlist.hjob_export_sch_pythonbom.cppjob_export_sch_pythonbom.hjob_fp_export_svg.cppjob_fp_export_svg.hjob_fp_upgrade.cppjob_fp_upgrade.hjob_pcb_drc.cppjob_pcb_drc.hjob_sch_erc.cppjob_sch_erc.hjob_sym_export_svg.cppjob_sym_export_svg.hjob_sym_upgrade.cppjob_sym_upgrade.h
@ -69,6 +69,25 @@ add_library( singletop STATIC EXCLUDE_FROM_ALL
|
||||
set( KICOMMON_SRCS
|
||||
gal/color4d.cpp
|
||||
|
||||
jobs/job.cpp
|
||||
jobs/job_export_pcb_drill.cpp
|
||||
jobs/job_export_pcb_dxf.cpp
|
||||
jobs/job_export_pcb_gerber.cpp
|
||||
jobs/job_export_pcb_gerbers.cpp
|
||||
jobs/job_export_pcb_pdf.cpp
|
||||
jobs/job_export_pcb_pos.cpp
|
||||
jobs/job_export_pcb_svg.cpp
|
||||
jobs/job_export_pcb_3d.cpp
|
||||
jobs/job_export_sch_bom.cpp
|
||||
jobs/job_export_sch_netlist.cpp
|
||||
jobs/job_export_sch_pythonbom.cpp
|
||||
jobs/job_fp_export_svg.cpp
|
||||
jobs/job_fp_upgrade.cpp
|
||||
jobs/job_pcb_drc.cpp
|
||||
jobs/job_sch_erc.cpp
|
||||
jobs/job_sym_export_svg.cpp
|
||||
jobs/job_sym_upgrade.cpp
|
||||
|
||||
asset_archive.cpp
|
||||
array_axis.cpp
|
||||
array_options.cpp
|
||||
|
28
common/jobs/job.cpp
Normal file
28
common/jobs/job.cpp
Normal file
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job.h>
|
||||
|
||||
JOB::JOB( const std::string& aType, bool aIsCli ) :
|
||||
m_type( aType ),
|
||||
m_isCli( aIsCli ),
|
||||
m_varOverrides()
|
||||
{
|
||||
}
|
@ -21,21 +21,17 @@
|
||||
#ifndef JOB_H
|
||||
#define JOB_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <map>
|
||||
#include <wx/string.h>
|
||||
|
||||
/**
|
||||
* An simple container class that lets us dispatch output jobs to kifaces
|
||||
*/
|
||||
class JOB
|
||||
class KICOMMON_API JOB
|
||||
{
|
||||
public:
|
||||
JOB( const std::string& aType, bool aIsCli ) :
|
||||
m_type( aType ),
|
||||
m_isCli( aIsCli ),
|
||||
m_varOverrides()
|
||||
{
|
||||
}
|
||||
JOB( const std::string& aType, bool aIsCli );
|
||||
|
||||
virtual ~JOB() {}
|
||||
|
||||
|
47
common/jobs/job_export_pcb_3d.cpp
Normal file
47
common/jobs/job_export_pcb_3d.cpp
Normal file
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_3d.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_3D::JOB_EXPORT_PCB_3D( bool aIsCli ) :
|
||||
JOB( "3d", aIsCli ),
|
||||
m_overwrite( false ),
|
||||
m_useGridOrigin( false ),
|
||||
m_useDrillOrigin( false ),
|
||||
m_hasUserOrigin( false ),
|
||||
m_boardOnly( false ),
|
||||
m_includeUnspecified( false ),
|
||||
m_includeDNP( false ),
|
||||
m_substModels( false ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_xOrigin( 0.0 ),
|
||||
m_yOrigin( 0.0 ),
|
||||
// max dist to chain 2 items (lines or curves) to build the board outlines
|
||||
m_BoardOutlinesChainingEpsilon( 0.01 ), // 0.01 mm is a good value
|
||||
m_exportTracks( false ), // Extremely time consuming if true
|
||||
m_exportZones( false ), // Extremely time consuming if true
|
||||
m_format( JOB_EXPORT_PCB_3D::FORMAT::UNKNOWN ),
|
||||
m_vrmlUnits( JOB_EXPORT_PCB_3D::VRML_UNITS::METERS ),
|
||||
m_vrmlModelDir( wxEmptyString ),
|
||||
m_vrmlRelativePaths( false )
|
||||
{
|
||||
}
|
@ -21,36 +21,14 @@
|
||||
#ifndef JOB_EXPORT_STEP_H
|
||||
#define JOB_EXPORT_STEP_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_3D : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_3D : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_3D( bool aIsCli ) :
|
||||
JOB( "3d", aIsCli ),
|
||||
m_overwrite( false ),
|
||||
m_useGridOrigin( false ),
|
||||
m_useDrillOrigin( false ),
|
||||
m_hasUserOrigin( false ),
|
||||
m_boardOnly( false ),
|
||||
m_includeUnspecified( false ),
|
||||
m_includeDNP( false ),
|
||||
m_substModels( false ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_xOrigin( 0.0 ),
|
||||
m_yOrigin( 0.0 ),
|
||||
// max dist to chain 2 items (lines or curves) to build the board outlines
|
||||
m_BoardOutlinesChainingEpsilon( 0.01 ), // 0.01 mm is a good value
|
||||
m_exportTracks( false ), // Extremely time consuming if true
|
||||
m_exportZones( false ), // Extremely time consuming if true
|
||||
m_format( JOB_EXPORT_PCB_3D::FORMAT::UNKNOWN ),
|
||||
m_vrmlUnits( JOB_EXPORT_PCB_3D::VRML_UNITS::METERS ),
|
||||
m_vrmlModelDir( wxEmptyString ),
|
||||
m_vrmlRelativePaths( false )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_3D( bool aIsCli );
|
||||
|
||||
enum class FORMAT
|
||||
{
|
||||
|
39
common/jobs/job_export_pcb_drill.cpp
Normal file
39
common/jobs/job_export_pcb_drill.cpp
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_drill.h>
|
||||
|
||||
JOB_EXPORT_PCB_DRILL::JOB_EXPORT_PCB_DRILL( bool aIsCli ) :
|
||||
JOB( "drill", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputDir(),
|
||||
m_excellonMirrorY( false ),
|
||||
m_excellonMinimalHeader( false ),
|
||||
m_excellonCombinePTHNPTH( true ),
|
||||
m_excellonOvalDrillRoute( false ),
|
||||
m_format( DRILL_FORMAT::EXCELLON ),
|
||||
m_drillOrigin( DRILL_ORIGIN::ABS ),
|
||||
m_drillUnits( DRILL_UNITS::INCHES ),
|
||||
m_zeroFormat( ZEROS_FORMAT::DECIMAL ),
|
||||
m_mapFormat( MAP_FORMAT::PDF ),
|
||||
m_gerberPrecision( 5 ),
|
||||
m_generateMap( false )
|
||||
{
|
||||
}
|
@ -21,30 +21,15 @@
|
||||
#ifndef JOB_EXPORT_PCB_DRILL_H
|
||||
#define JOB_EXPORT_PCB_DRILL_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_DRILL : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_DRILL : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_DRILL( bool aIsCli ) :
|
||||
JOB( "drill", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputDir(),
|
||||
m_excellonMirrorY( false ),
|
||||
m_excellonMinimalHeader( false ),
|
||||
m_excellonCombinePTHNPTH( true ),
|
||||
m_excellonOvalDrillRoute( false ),
|
||||
m_format( DRILL_FORMAT::EXCELLON ),
|
||||
m_drillOrigin( DRILL_ORIGIN::ABS ),
|
||||
m_drillUnits( DRILL_UNITS::INCHES ),
|
||||
m_zeroFormat( ZEROS_FORMAT::DECIMAL ),
|
||||
m_mapFormat( MAP_FORMAT::PDF ),
|
||||
m_gerberPrecision( 5 ),
|
||||
m_generateMap( false )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_DRILL( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputDir;
|
||||
|
36
common/jobs/job_export_pcb_dxf.cpp
Normal file
36
common/jobs/job_export_pcb_dxf.cpp
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_dxf.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_DXF::JOB_EXPORT_PCB_DXF( bool aIsCli ) :
|
||||
JOB( "dxf", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_drawingSheet(),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotGraphicItemsUsingContours( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_dxfUnits( DXF_UNITS::INCHES ),
|
||||
m_printMaskLayer()
|
||||
{
|
||||
}
|
@ -21,26 +21,15 @@
|
||||
#ifndef JOB_EXPORT_PCB_DXF_H
|
||||
#define JOB_EXPORT_PCB_DXF_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_DXF : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_DXF : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_DXF( bool aIsCli ) :
|
||||
JOB( "dxf", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_drawingSheet(),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotGraphicItemsUsingContours( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_dxfUnits( DXF_UNITS::INCHES ),
|
||||
m_printMaskLayer()
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_DXF( bool aIsCli );
|
||||
|
||||
enum class DXF_UNITS
|
||||
{
|
||||
|
47
common/jobs/job_export_pcb_gerber.cpp
Normal file
47
common/jobs/job_export_pcb_gerber.cpp
Normal file
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_gerber.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_GERBER::JOB_EXPORT_PCB_GERBER( const std::string& aType, bool aIsCli ) :
|
||||
JOB( aType, aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_drawingSheet(),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_subtractSolderMaskFromSilk( false ),
|
||||
m_includeNetlistAttributes( true ),
|
||||
m_useX2Format( true ),
|
||||
m_disableApertureMacros( false ),
|
||||
m_useAuxOrigin( false ),
|
||||
m_useProtelFileExtension( true ),
|
||||
m_precision( 5 ),
|
||||
m_printMaskLayer()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_GERBER::JOB_EXPORT_PCB_GERBER( bool aIsCli ) :
|
||||
JOB_EXPORT_PCB_GERBER( "gerber", aIsCli )
|
||||
{
|
||||
}
|
@ -21,36 +21,16 @@
|
||||
#ifndef JOB_EXPORT_PCB_GERBER_H
|
||||
#define JOB_EXPORT_PCB_GERBER_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_GERBER : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_GERBER : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_GERBER( const std::string& aType, bool aIsCli ) :
|
||||
JOB( aType, aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_drawingSheet(),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_subtractSolderMaskFromSilk( false ),
|
||||
m_includeNetlistAttributes( true ),
|
||||
m_useX2Format( true ),
|
||||
m_disableApertureMacros( false ),
|
||||
m_useAuxOrigin( false ),
|
||||
m_useProtelFileExtension( true ),
|
||||
m_precision( 5 ),
|
||||
m_printMaskLayer()
|
||||
{
|
||||
}
|
||||
|
||||
JOB_EXPORT_PCB_GERBER( bool aIsCli ) :
|
||||
JOB_EXPORT_PCB_GERBER( "gerber", aIsCli )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_GERBER( const std::string& aType, bool aIsCli );
|
||||
JOB_EXPORT_PCB_GERBER( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
30
common/jobs/job_export_pcb_gerbers.cpp
Normal file
30
common/jobs/job_export_pcb_gerbers.cpp
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_gerbers.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_GERBERS::JOB_EXPORT_PCB_GERBERS( bool aIsCli ) :
|
||||
JOB_EXPORT_PCB_GERBER( "gerbers", aIsCli ),
|
||||
m_layersIncludeOnAll(),
|
||||
m_layersIncludeOnAllSet( false ),
|
||||
m_useBoardPlotParams( false )
|
||||
{
|
||||
}
|
@ -21,21 +21,16 @@
|
||||
#ifndef JOB_EXPORT_PCB_GERBERS_H
|
||||
#define JOB_EXPORT_PCB_GERBERS_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include "job_export_pcb_gerber.h"
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_GERBERS : public JOB_EXPORT_PCB_GERBER
|
||||
class KICOMMON_API JOB_EXPORT_PCB_GERBERS : public JOB_EXPORT_PCB_GERBER
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_GERBERS( bool aIsCli ) :
|
||||
JOB_EXPORT_PCB_GERBER( "gerbers", aIsCli ),
|
||||
m_layersIncludeOnAll(),
|
||||
m_layersIncludeOnAllSet( false ),
|
||||
m_useBoardPlotParams( false )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_GERBERS( bool aIsCli );
|
||||
|
||||
LSET m_layersIncludeOnAll;
|
||||
|
||||
|
39
common/jobs/job_export_pcb_pdf.cpp
Normal file
39
common/jobs/job_export_pcb_pdf.cpp
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_pdf.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_PDF::JOB_EXPORT_PCB_PDF( bool aIsCli ) :
|
||||
JOB( "pdf", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_colorTheme(),
|
||||
m_drawingSheet(),
|
||||
m_mirror( false ),
|
||||
m_blackAndWhite( false ),
|
||||
m_negative( false ),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_printMaskLayer(),
|
||||
m_drillShapeOption( 2 )
|
||||
{
|
||||
}
|
@ -21,29 +21,16 @@
|
||||
#ifndef JOB_EXPORT_PCB_PDF_H
|
||||
#define JOB_EXPORT_PCB_PDF_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_PDF : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_PDF : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_PDF( bool aIsCli ) :
|
||||
JOB( "pdf", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_colorTheme(),
|
||||
m_drawingSheet(),
|
||||
m_mirror( false ),
|
||||
m_blackAndWhite( false ),
|
||||
m_negative( false ),
|
||||
m_plotFootprintValues( true ),
|
||||
m_plotRefDes( true ),
|
||||
m_plotBorderTitleBlocks( false ),
|
||||
m_printMaskLayer(),
|
||||
m_drillShapeOption( 2 )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_PDF( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
38
common/jobs/job_export_pcb_pos.cpp
Normal file
38
common/jobs/job_export_pcb_pos.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_pos.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_POS::JOB_EXPORT_PCB_POS( bool aIsCli ) :
|
||||
JOB( "pos", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_useDrillPlaceFileOrigin( true ),
|
||||
m_smdOnly( false ),
|
||||
m_excludeFootprintsWithTh( false ),
|
||||
m_excludeDNP( false ),
|
||||
m_negateBottomX( false )
|
||||
{
|
||||
m_side = SIDE::BOTH;
|
||||
m_units = UNITS::MILLIMETERS;
|
||||
m_format = FORMAT::ASCII;
|
||||
m_gerberBoardEdge = true;
|
||||
}
|
@ -21,28 +21,15 @@
|
||||
#ifndef JOB_EXPORT_PCB_POS_H
|
||||
#define JOB_EXPORT_PCB_POS_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_POS : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_POS : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_POS( bool aIsCli ) :
|
||||
JOB( "pos", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_useDrillPlaceFileOrigin( true ),
|
||||
m_smdOnly( false ),
|
||||
m_excludeFootprintsWithTh( false ),
|
||||
m_excludeDNP( false ),
|
||||
m_negateBottomX( false )
|
||||
{
|
||||
m_side = SIDE::BOTH;
|
||||
m_units = UNITS::MILLIMETERS;
|
||||
m_format = FORMAT::ASCII;
|
||||
m_gerberBoardEdge = true;
|
||||
}
|
||||
JOB_EXPORT_PCB_POS( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
38
common/jobs/job_export_pcb_svg.cpp
Normal file
38
common/jobs/job_export_pcb_svg.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_pcb_svg.h>
|
||||
|
||||
|
||||
JOB_EXPORT_PCB_SVG::JOB_EXPORT_PCB_SVG( bool aIsCli ) :
|
||||
JOB( "svg", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_colorTheme(),
|
||||
m_drawingSheet(),
|
||||
m_mirror( false ),
|
||||
m_blackAndWhite( false ),
|
||||
m_negative( false ),
|
||||
m_plotDrawingSheet( true ),
|
||||
m_pageSizeMode( 0 ),
|
||||
m_printMaskLayer(),
|
||||
m_drillShapeOption( 2 )
|
||||
{
|
||||
}
|
@ -21,28 +21,15 @@
|
||||
#ifndef JOB_EXPORT_PCB_SVG_H
|
||||
#define JOB_EXPORT_PCB_SVG_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <layer_ids.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_PCB_SVG : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_PCB_SVG : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_PCB_SVG( bool aIsCli ) :
|
||||
JOB( "svg", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
m_colorTheme(),
|
||||
m_drawingSheet(),
|
||||
m_mirror( false ),
|
||||
m_blackAndWhite( false ),
|
||||
m_negative( false ),
|
||||
m_plotDrawingSheet( true ),
|
||||
m_pageSizeMode( 0 ),
|
||||
m_printMaskLayer(),
|
||||
m_drillShapeOption( 2 )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_PCB_SVG( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
44
common/jobs/job_export_sch_bom.cpp
Normal file
44
common/jobs/job_export_sch_bom.cpp
Normal file
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_sch_bom.h>
|
||||
|
||||
|
||||
JOB_EXPORT_SCH_BOM::JOB_EXPORT_SCH_BOM( bool aIsCli ) :
|
||||
JOB( "bom", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
|
||||
m_fieldDelimiter(),
|
||||
m_stringDelimiter(),
|
||||
m_refDelimiter(),
|
||||
m_refRangeDelimiter(),
|
||||
m_keepTabs( false ),
|
||||
m_keepLineBreaks( false ),
|
||||
|
||||
m_fieldsOrdered(),
|
||||
m_fieldsLabels(),
|
||||
m_fieldsGroupBy(),
|
||||
m_sortField(),
|
||||
m_sortAsc( true ),
|
||||
m_filterString(),
|
||||
m_excludeDNP( false )
|
||||
{
|
||||
}
|
@ -21,33 +21,14 @@
|
||||
#ifndef JOB_EXPORT_SCH_BOM_H
|
||||
#define JOB_EXPORT_SCH_BOM_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_SCH_BOM : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_SCH_BOM : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_SCH_BOM( bool aIsCli ) :
|
||||
JOB( "bom", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile(),
|
||||
|
||||
m_fieldDelimiter(),
|
||||
m_stringDelimiter(),
|
||||
m_refDelimiter(),
|
||||
m_refRangeDelimiter(),
|
||||
m_keepTabs( false ),
|
||||
m_keepLineBreaks( false ),
|
||||
|
||||
m_fieldsOrdered(),
|
||||
m_fieldsLabels(),
|
||||
m_fieldsGroupBy(),
|
||||
m_sortField(),
|
||||
m_sortAsc( true ),
|
||||
m_filterString(),
|
||||
m_excludeDNP( false )
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_SCH_BOM( bool aIsCli );
|
||||
|
||||
// Basic options
|
||||
wxString m_filename;
|
||||
|
30
common/jobs/job_export_sch_netlist.cpp
Normal file
30
common/jobs/job_export_sch_netlist.cpp
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_sch_netlist.h>
|
||||
|
||||
|
||||
JOB_EXPORT_SCH_NETLIST::JOB_EXPORT_SCH_NETLIST( bool aIsCli ) :
|
||||
JOB( "netlist", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile()
|
||||
{
|
||||
format = FORMAT::KICADSEXPR;
|
||||
}
|
@ -21,19 +21,14 @@
|
||||
#ifndef JOB_EXPORT_SCH_NETLIST_H
|
||||
#define JOB_EXPORT_SCH_NETLIST_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_SCH_NETLIST : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_SCH_NETLIST : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_SCH_NETLIST( bool aIsCli ) :
|
||||
JOB( "netlist", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile()
|
||||
{
|
||||
format = FORMAT::KICADSEXPR;
|
||||
}
|
||||
JOB_EXPORT_SCH_NETLIST( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
29
common/jobs/job_export_sch_pythonbom.cpp
Normal file
29
common/jobs/job_export_sch_pythonbom.cpp
Normal file
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2023 Mark Roszko <mark.roszko@gmail.com>
|
||||
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation, either version 3 of the License, or (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <jobs/job_export_sch_pythonbom.h>
|
||||
|
||||
|
||||
JOB_EXPORT_SCH_PYTHONBOM::JOB_EXPORT_SCH_PYTHONBOM( bool aIsCli ) :
|
||||
JOB( "pythonbom", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile()
|
||||
{
|
||||
}
|
@ -21,18 +21,14 @@
|
||||
#ifndef JOB_EXPORT_SCH_PYTHONBOM_H
|
||||
#define JOB_EXPORT_SCH_PYTHONBOM_H
|
||||
|
||||
#include <kicommon.h>
|
||||
#include <wx/string.h>
|
||||
#include "job.h"
|
||||
|
||||
class JOB_EXPORT_SCH_PYTHONBOM : public JOB
|
||||
class KICOMMON_API JOB_EXPORT_SCH_PYTHONBOM : public JOB
|
||||
{
|
||||
public:
|
||||
JOB_EXPORT_SCH_PYTHONBOM( bool aIsCli ) :
|
||||
JOB( "pythonbom", aIsCli ),
|
||||
m_filename(),
|
||||
m_outputFile()
|
||||
{
|
||||
}
|
||||
JOB_EXPORT_SCH_PYTHONBOM( bool aIsCli );
|
||||
|
||||
wxString m_filename;
|
||||
wxString m_outputFile;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user