21#ifndef COMMAND_EXPORT_PCB_BASE_H
22#define COMMAND_EXPORT_PCB_BASE_H
30#define ARG_BLACKANDWHITE "--black-and-white"
31#define ARG_BLACKANDWHITE_DESC "Black and white only"
33#define ARG_SKETCH_PADS_ON_FAB_LAYERS "--sketch-pads-on-fab-layers"
34#define ARG_SKETCH_PADS_ON_FAB_LAYERS_DESC "Draw pad outlines on front and back fab layers"
36#define ARG_SKETCH_PAD_NUMBERS "--sketch-pad-numbers"
37#define ARG_SKETCH_PAD_NUMBERS_DESC "Plot pad numbers on top of sketched pads on fab layers"
39#define ARG_HIDE_DNP_FPS_ON_FAB_LAYERS "--hide-DNP-footprints-on-fab-layers"
40#define ARG_HIDE_DNP_FPS_ON_FAB_LAYERS_DESC "Don't plot text & graphics of DNP footprints on fab layers"
41#define ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS "--sketch-DNP-footprints-on-fab-layers"
42#define ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS_DESC "Plot graphics of DNP footprints in sketch mode on fab layers"
43#define ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS "--crossout-DNP-footprints-on-fab-layers"
44#define ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS_DESC "Plot an 'X' over the courtyard of DNP footprints on fab layers, and strikeout their reference designators"
46#define ARG_DRILL_SHAPE_OPTION "--drill-shape-opt"
47#define ARG_DRILL_SHAPE_OPTION_DESC "Set pad/via drill shape option (0 = no shape, 1 = small shape, 2 = actual shape)"
49#define ARG_NEGATIVE "--negative"
50#define ARG_NEGATIVE_SHORT "-n"
51#define ARG_NEGATIVE_DESC "Plot as negative (useful for directly etching from the export)"
53#define ARG_LAYERS "--layers"
54#define ARG_EXCLUDE_REFDES "--exclude-refdes"
55#define ARG_EXCLUDE_VALUE "--exclude-value"
56#define ARG_THEME "--theme"
57#define ARG_INCLUDE_BORDER_TITLE "--include-border-title"
58#define ARG_SUBTRACT_SOLDERMASK "--subtract-soldermask"
59#define ARG_MIRROR "--mirror"
61#define ARG_FLIP_BOTTOM_PADS "--flip-bottom-pads"
62#define ARG_UNIQUE_PINS "--unique-pins"
63#define ARG_UNIQUE_FOOTPRINTS "--unique-footprints"
64#define ARG_USE_DRILL_ORIGIN "--use-drill-origin"
65#define ARG_STORE_ORIGIN_COORD "--store-origin-coord"
67#define ARG_COMMON_LAYERS "--common-layers"
69#define ARG_SCALE "--scale"
70#define ARG_SCALE_DESC "Scale for the PCB, not for the border and title. Use 0 for autoscale"
72#define ARG_BACKGROUND_COLOR "--bg-color"
73#define ARG_BACKGROUND_COLOR_DESC "Background color, can be in hex #rrggbb, #rrggbbaa; or css rgb(r,g,b), rgba(r,g,b,a) format"
75#define ARG_CHECK_ZONES "--check-zones"
76#define ARG_CHECK_ZONES_DESC "Check and refill zones if required"
77#define ARG_FAB_UNITS "--units"
78#define ARG_PRECISION "--precision"
79#define ARG_BOM_COL_MFG_PN "--bom-col-mfg-pn"
80#define ARG_DATA_SET "--data-set"
81#define ARG_SECTIONS "--sections"
82#define ARG_NET_NAMES "--net-names"
COMMAND(const std::string &aName)
Define a new COMMAND instance.
PCB_EXPORT_BASE_COMMAND(const std::string &aName, IO_TYPE aInputType=IO_TYPE::FILE, IO_TYPE aOutputType=IO_TYPE::FILE)
void applyFabExportArgs(JOB_EXPORT_PCB_FAB &aJob)
void addFabExportArgs(const JOB_EXPORT_PCB_FAB &aJob, const std::string &aDataSetAlias={})
aJob says which data sets the format supports aDataSetAlias is a second name for the flag
void addCommonLayersArg()