KiCad PCB EDA Suite
Loading...
Searching...
No Matches
job_export_pcb_drill.h
Go to the documentation of this file.
1
/*
2
* This program source code file is part of KiCad, a free EDA CAD application.
3
*
4
* Copyright (C) 2022 Mark Roszko <
[email protected]
>
5
* Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6
*
7
* This program is free software: you can redistribute it and/or modify it
8
* under the terms of the GNU General Public License as published by the
9
* Free Software Foundation, either version 3 of the License, or (at your
10
* option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful, but
13
* WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <https://www.gnu.org/licenses/>.
19
*/
20
21
#pragma once
22
23
#include <
kicommon.h
>
24
#include <
layer_ids.h
>
25
#include "
job.h
"
26
27
28
// default trailing digits in Gerber coordinates, when units are mm
29
// This is also the max usable precision (i.e. internal Pcbnew Units)
30
static
const
int
GBR_DEFAULT_PRECISION
= 6;
31
32
33
34
class
KICOMMON_API
JOB_EXPORT_PCB_DRILL
:
public
JOB
35
{
36
public
:
37
JOB_EXPORT_PCB_DRILL
();
38
39
wxString
GetDefaultDescription
()
const override
;
40
wxString
GetSettingsDialogTitle
()
const override
;
41
42
enum class
DRILL_FORMAT
43
{
44
EXCELLON
,
45
GERBER
46
};
47
48
enum class
DRILL_ORIGIN
49
{
50
ABS
,
51
PLOT
52
};
53
54
enum class
DRILL_UNITS
55
{
56
INCH
,
// Do not use IN: it conflicts with a Windows header
57
MM
58
};
59
60
enum class
ZEROS_FORMAT
61
{
62
DECIMAL
,
63
SUPPRESS_LEADING
,
64
SUPPRESS_TRAILING
,
65
KEEP_ZEROS
66
};
67
68
enum class
MAP_FORMAT
69
{
70
POSTSCRIPT
,
71
GERBER_X2
,
72
DXF
,
73
SVG
,
74
PDF
75
};
76
77
public
:
78
wxString
m_filename
;
79
80
bool
m_excellonMirrorY
;
81
bool
m_excellonMinimalHeader
;
82
bool
m_excellonCombinePTHNPTH
;
83
bool
m_excellonOvalDrillRoute
;
84
85
DRILL_FORMAT
m_format
;
86
DRILL_ORIGIN
m_drillOrigin
;
87
DRILL_UNITS
m_drillUnits
;
88
ZEROS_FORMAT
m_zeroFormat
;
89
90
MAP_FORMAT
m_mapFormat
;
91
int
m_gerberPrecision
;
92
bool
m_generateMap
;
93
94
bool
m_generateTenting
;
95
96
bool
m_generateReport
;
97
wxString
m_reportPath
;
98
};
99
JOB_EXPORT_PCB_DRILL::JOB_EXPORT_PCB_DRILL
JOB_EXPORT_PCB_DRILL()
JOB_EXPORT_PCB_DRILL::DRILL_FORMAT
DRILL_FORMAT
Definition
job_export_pcb_drill.h:43
JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::EXCELLON
@ EXCELLON
Definition
job_export_pcb_drill.h:44
JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::GERBER
@ GERBER
Definition
job_export_pcb_drill.h:45
JOB_EXPORT_PCB_DRILL::DRILL_UNITS
DRILL_UNITS
Definition
job_export_pcb_drill.h:55
JOB_EXPORT_PCB_DRILL::DRILL_UNITS::INCH
@ INCH
Definition
job_export_pcb_drill.h:56
JOB_EXPORT_PCB_DRILL::DRILL_UNITS::MM
@ MM
Definition
job_export_pcb_drill.h:57
JOB_EXPORT_PCB_DRILL::ZEROS_FORMAT
ZEROS_FORMAT
Definition
job_export_pcb_drill.h:61
JOB_EXPORT_PCB_DRILL::ZEROS_FORMAT::DECIMAL
@ DECIMAL
Definition
job_export_pcb_drill.h:62
JOB_EXPORT_PCB_DRILL::ZEROS_FORMAT::KEEP_ZEROS
@ KEEP_ZEROS
Definition
job_export_pcb_drill.h:65
JOB_EXPORT_PCB_DRILL::ZEROS_FORMAT::SUPPRESS_LEADING
@ SUPPRESS_LEADING
Definition
job_export_pcb_drill.h:63
JOB_EXPORT_PCB_DRILL::ZEROS_FORMAT::SUPPRESS_TRAILING
@ SUPPRESS_TRAILING
Definition
job_export_pcb_drill.h:64
JOB_EXPORT_PCB_DRILL::DRILL_ORIGIN
DRILL_ORIGIN
Definition
job_export_pcb_drill.h:49
JOB_EXPORT_PCB_DRILL::DRILL_ORIGIN::PLOT
@ PLOT
Definition
job_export_pcb_drill.h:51
JOB_EXPORT_PCB_DRILL::DRILL_ORIGIN::ABS
@ ABS
Definition
job_export_pcb_drill.h:50
JOB_EXPORT_PCB_DRILL::m_zeroFormat
ZEROS_FORMAT m_zeroFormat
Definition
job_export_pcb_drill.h:88
JOB_EXPORT_PCB_DRILL::m_drillUnits
DRILL_UNITS m_drillUnits
Definition
job_export_pcb_drill.h:87
JOB_EXPORT_PCB_DRILL::m_format
DRILL_FORMAT m_format
Definition
job_export_pcb_drill.h:85
JOB_EXPORT_PCB_DRILL::m_excellonMirrorY
bool m_excellonMirrorY
Definition
job_export_pcb_drill.h:80
JOB_EXPORT_PCB_DRILL::m_excellonOvalDrillRoute
bool m_excellonOvalDrillRoute
Definition
job_export_pcb_drill.h:83
JOB_EXPORT_PCB_DRILL::m_filename
wxString m_filename
Definition
job_export_pcb_drill.h:78
JOB_EXPORT_PCB_DRILL::m_drillOrigin
DRILL_ORIGIN m_drillOrigin
Definition
job_export_pcb_drill.h:86
JOB_EXPORT_PCB_DRILL::m_generateReport
bool m_generateReport
Definition
job_export_pcb_drill.h:96
JOB_EXPORT_PCB_DRILL::m_generateMap
bool m_generateMap
Definition
job_export_pcb_drill.h:92
JOB_EXPORT_PCB_DRILL::m_excellonCombinePTHNPTH
bool m_excellonCombinePTHNPTH
Definition
job_export_pcb_drill.h:82
JOB_EXPORT_PCB_DRILL::m_excellonMinimalHeader
bool m_excellonMinimalHeader
Definition
job_export_pcb_drill.h:81
JOB_EXPORT_PCB_DRILL::m_mapFormat
MAP_FORMAT m_mapFormat
Definition
job_export_pcb_drill.h:90
JOB_EXPORT_PCB_DRILL::MAP_FORMAT
MAP_FORMAT
Definition
job_export_pcb_drill.h:69
JOB_EXPORT_PCB_DRILL::MAP_FORMAT::DXF
@ DXF
Definition
job_export_pcb_drill.h:72
JOB_EXPORT_PCB_DRILL::MAP_FORMAT::PDF
@ PDF
Definition
job_export_pcb_drill.h:74
JOB_EXPORT_PCB_DRILL::MAP_FORMAT::SVG
@ SVG
Definition
job_export_pcb_drill.h:73
JOB_EXPORT_PCB_DRILL::MAP_FORMAT::GERBER_X2
@ GERBER_X2
Definition
job_export_pcb_drill.h:71
JOB_EXPORT_PCB_DRILL::MAP_FORMAT::POSTSCRIPT
@ POSTSCRIPT
Definition
job_export_pcb_drill.h:70
JOB_EXPORT_PCB_DRILL::m_generateTenting
bool m_generateTenting
Definition
job_export_pcb_drill.h:94
JOB_EXPORT_PCB_DRILL::m_reportPath
wxString m_reportPath
Definition
job_export_pcb_drill.h:97
JOB_EXPORT_PCB_DRILL::m_gerberPrecision
int m_gerberPrecision
Definition
job_export_pcb_drill.h:91
JOB::JOB
JOB(const std::string &aType, bool aOutputIsDirectory)
Definition
job.cpp:26
JOB::GetDefaultDescription
virtual wxString GetDefaultDescription() const
Definition
job.cpp:74
JOB::GetSettingsDialogTitle
virtual wxString GetSettingsDialogTitle() const
Definition
job.cpp:80
job.h
GBR_DEFAULT_PRECISION
static const int GBR_DEFAULT_PRECISION
Definition
job_export_pcb_drill.h:30
kicommon.h
KICOMMON_API
#define KICOMMON_API
Definition
kicommon.h:27
layer_ids.h
src
common
jobs
job_export_pcb_drill.h
Generated on Tue Oct 27 2026 00:06:19 for KiCad PCB EDA Suite by
1.13.2