KiCad PCB EDA Suite
pcbnew/plugins/kicad/kicad_plugin.h File Reference
#include <io_mgr.h>
#include <string>
#include <layer_ids.h>

Go to the source code of this file.

Classes

class  PCB_IO
 A PLUGIN derivation for saving and loading Pcbnew s-expression formatted files. More...
 

Macros

#define SEXPR_BOARD_FILE_VERSION   20211014
 Current s-expression file format version. 2 was the last legacy format version. More...
 
#define BOARD_FILE_HOST_VERSION   20200825
 Earlier files than this include the host tag. More...
 
#define LEGACY_ARC_FORMATTING   20210925
 These were the last to use old arc formatting. More...
 
#define CTL_OMIT_PAD_NETS   (1 << 1)
 Omit pads net names (useless in library) More...
 
#define CTL_OMIT_TSTAMPS   (1 << 2)
 Omit component time stamp (useless in library) More...
 
#define CTL_OMIT_INITIAL_COMMENTS   (1 << 3)
 omit FOOTPRINT initial comments More...
 
#define CTL_OMIT_PATH   (1 << 4)
 Omit component sheet time stamp (useless in library) More...
 
#define CTL_OMIT_AT   (1 << 5)
 Omit position and rotation. More...
 
#define CTL_OMIT_LIBNAME   (1 << 7)
 Omit lib alias when saving (used for. More...
 
#define CTL_OMIT_FOOTPRINT_VERSION   (1 << 8)
 Omit the version string from the (footprint) More...
 
#define CTL_FOR_CLIPBOARD   (CTL_OMIT_INITIAL_COMMENTS)
 Format output for the clipboard instead of footprint library or BOARD. More...
 
#define CTL_FOR_LIBRARY   ( CTL_OMIT_PAD_NETS | CTL_OMIT_TSTAMPS | CTL_OMIT_PATH | CTL_OMIT_AT | CTL_OMIT_LIBNAME )
 Format output for a footprint library instead of clipboard or BOARD. More...
 
#define CTL_FOR_BOARD   (CTL_OMIT_INITIAL_COMMENTS|CTL_OMIT_FOOTPRINT_VERSION)
 The zero arg constructor when PCB_IO is used for PLUGIN::Load() and PLUGIN::Save()ing a BOARD file underneath IO_MGR. More...
 

Macro Definition Documentation

◆ BOARD_FILE_HOST_VERSION

#define BOARD_FILE_HOST_VERSION   20200825

Earlier files than this include the host tag.

Definition at line 107 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_FOR_BOARD

The zero arg constructor when PCB_IO is used for PLUGIN::Load() and PLUGIN::Save()ing a BOARD file underneath IO_MGR.

Definition at line 133 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_FOR_CLIPBOARD

#define CTL_FOR_CLIPBOARD   (CTL_OMIT_INITIAL_COMMENTS)

Format output for the clipboard instead of footprint library or BOARD.

Definition at line 125 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_FOR_LIBRARY

Format output for a footprint library instead of clipboard or BOARD.

Definition at line 128 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_AT

#define CTL_OMIT_AT   (1 << 5)

Omit position and rotation.

(always saved with potion 0,0 and rotation = 0 in library).

Definition at line 114 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_FOOTPRINT_VERSION

#define CTL_OMIT_FOOTPRINT_VERSION   (1 << 8)

Omit the version string from the (footprint)

sexpr group

Definition at line 119 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_INITIAL_COMMENTS

#define CTL_OMIT_INITIAL_COMMENTS   (1 << 3)

omit FOOTPRINT initial comments

Definition at line 112 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_LIBNAME

#define CTL_OMIT_LIBNAME   (1 << 7)

Omit lib alias when saving (used for.

board/not library).

Definition at line 117 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_PAD_NETS

#define CTL_OMIT_PAD_NETS   (1 << 1)

Omit pads net names (useless in library)

Definition at line 110 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_PATH

#define CTL_OMIT_PATH   (1 << 4)

Omit component sheet time stamp (useless in library)

Definition at line 113 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ CTL_OMIT_TSTAMPS

#define CTL_OMIT_TSTAMPS   (1 << 2)

Omit component time stamp (useless in library)

Definition at line 111 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ LEGACY_ARC_FORMATTING

#define LEGACY_ARC_FORMATTING   20210925

These were the last to use old arc formatting.

Definition at line 108 of file pcbnew/plugins/kicad/kicad_plugin.h.

◆ SEXPR_BOARD_FILE_VERSION

#define SEXPR_BOARD_FILE_VERSION   20211014

Current s-expression file format version. 2 was the last legacy format version.

Definition at line 105 of file pcbnew/plugins/kicad/kicad_plugin.h.