KiCad PCB EDA Suite
|
#include <pcb_io/pcb_io.h>
#include <pcb_io/pcb_io_mgr.h>
#include <ctl_flags.h>
#include <richio.h>
#include <string>
#include <optional>
#include <layer_ids.h>
#include <zone_settings.h>
#include <lset.h>
#include <boost/ptr_container/ptr_map.hpp>
#include <wx_filename.h>
#include "widgets/report_severity.h"
Go to the source code of this file.
Classes | |
class | FP_CACHE_ENTRY |
Helper class for creating a footprint library cache. More... | |
class | FP_CACHE |
class | PCB_IO_KICAD_SEXPR |
A #PLUGIN derivation for saving and loading Pcbnew s-expression formatted files. More... | |
Macros | |
#define | SEXPR_BOARD_FILE_VERSION 20250926 |
Current s-expression file format version. 2 was the last legacy format version. | |
#define | BOARD_FILE_HOST_VERSION 20200825 |
Earlier files than this include the host tag. | |
#define | LEGACY_ARC_FORMATTING 20210925 |
These were the last to use old arc formatting. | |
#define | LEGACY_NET_TIES 20220815 |
These were the last to use the keywords field to indicate a net-tie. | |
#define | FIRST_NORMALIZED_VERISON 20230924 |
Earlier files did not have normalized bools. | |
#define | CTL_FOR_CLIPBOARD (CTL_OMIT_INITIAL_COMMENTS) |
Format output for the clipboard instead of footprint library or BOARD. | |
#define | CTL_FOR_LIBRARY ( CTL_OMIT_PAD_NETS | CTL_OMIT_UUIDS | CTL_OMIT_PATH | CTL_OMIT_AT | CTL_OMIT_LIBNAME ) |
Format output for a footprint library instead of clipboard or BOARD. | |
#define | CTL_FOR_BOARD (CTL_OMIT_INITIAL_COMMENTS|CTL_OMIT_FOOTPRINT_VERSION) |
The zero arg constructor when PCB_PLUGIN is used for PLUGIN::Load() and PLUGIN::Save()ing a BOARD file underneath IO_MGR. | |
#define BOARD_FILE_HOST_VERSION 20200825 |
Earlier files than this include the host tag.
Definition at line 200 of file pcb_io_kicad_sexpr.h.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked().
#define CTL_FOR_BOARD (CTL_OMIT_INITIAL_COMMENTS|CTL_OMIT_FOOTPRINT_VERSION) |
The zero arg constructor when PCB_PLUGIN is used for PLUGIN::Load() and PLUGIN::Save()ing a BOARD file underneath IO_MGR.
Definition at line 218 of file pcb_io_kicad_sexpr.h.
Referenced by PCB_IO_KICAD_SEXPR::format(), and PCB_IO_KICAD_SEXPR::format().
#define CTL_FOR_CLIPBOARD (CTL_OMIT_INITIAL_COMMENTS) |
Format output for the clipboard instead of footprint library or BOARD.
Definition at line 210 of file pcb_io_kicad_sexpr.h.
Referenced by CLIPBOARD_IO::CLIPBOARD_IO().
#define CTL_FOR_LIBRARY ( CTL_OMIT_PAD_NETS | CTL_OMIT_UUIDS | CTL_OMIT_PATH | CTL_OMIT_AT | CTL_OMIT_LIBNAME ) |
Format output for a footprint library instead of clipboard or BOARD.
Definition at line 213 of file pcb_io_kicad_sexpr.h.
Referenced by FOOTPRINT_EDIT_FRAME::ExportFootprint(), PCB_IO_KICAD_SEXPR::FootprintSave(), PCBNEW_JOBS_HANDLER::JobExportFpSvg(), and PCBNEW_JOBS_HANDLER::JobExportFpUpgrade().
#define FIRST_NORMALIZED_VERISON 20230924 |
Earlier files did not have normalized bools.
Definition at line 204 of file pcb_io_kicad_sexpr.h.
#define LEGACY_ARC_FORMATTING 20210925 |
These were the last to use old arc formatting.
Definition at line 201 of file pcb_io_kicad_sexpr.h.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::parsePCB_SHAPE().
#define LEGACY_NET_TIES 20220815 |
These were the last to use the keywords field to indicate a net-tie.
Definition at line 202 of file pcb_io_kicad_sexpr.h.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::parseFOOTPRINT_unchecked().
#define SEXPR_BOARD_FILE_VERSION 20250926 |
Current s-expression file format version. 2 was the last legacy format version.
Definition at line 198 of file pcb_io_kicad_sexpr.h.
Referenced by KICAD_MANAGER_FRAME::CreateNewProject(), PCB_IO_KICAD_SEXPR::format(), PCBNEW_JOBS_HANDLER::JobExportFpUpgrade(), PCBNEW_JOBS_HANDLER::JobUpgrade(), PCB_EDIT_FRAME::OpenProjectFiles(), PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked(), PCB_IO_KICAD_SEXPR_PARSER::parseFOOTPRINT_unchecked(), PCB_IO_KICAD_SEXPR_PARSER::parseHeader(), CLIPBOARD_IO::SaveBoard(), PCB_IO_KICAD_SEXPR::SaveBoard(), and CLIPBOARD_IO::SaveSelection().