|
KiCad PCB EDA Suite
|
Object to parser s-expression symbol library and schematic file formats. More...
#include <sch_io_kicad_sexpr_parser.h>
Classes | |
| struct | CHAIN_TERMINAL |
| struct | GROUP_INFO |
Public Types | |
| using | CHAIN_TERMINALS = std::pair<CHAIN_TERMINAL, CHAIN_TERMINAL> |
Public Member Functions | |
| SCH_IO_KICAD_SEXPR_PARSER (LINE_READER *aLineReader=nullptr, PROGRESS_REPORTER *aProgressReporter=nullptr, unsigned aLineCount=0, SCH_SHEET *aRootSheet=nullptr, bool aIsAppending=false, bool aIsSheetLoad=false) | |
| void | ParseLib (LIB_SYMBOL_MAP &aSymbolLibMap) |
| LIB_SYMBOL * | ParseSymbol (LIB_SYMBOL_MAP &aSymbolLibMap, int aFileVersion=SEXPR_SYMBOL_LIB_FILE_VERSION) |
| Parse internal LINE_READER object into symbols and return all found. | |
| SCH_ITEM * | ParseSymbolDrawItem () |
| void | ParseSchematic (SCH_SHEET *aSheet, bool aIsCopyablyOnly=false, int aFileVersion=SEXPR_SCHEMATIC_FILE_VERSION) |
| Parse the internal LINE_READER object into aSheet. | |
| int | GetParsedRequiredVersion () const |
| const std::vector< wxString > & | GetParseWarnings () const |
| Return any non-fatal parse warnings that occurred during parsing. | |
| const std::map< wxString, wxString > & | GetNetChainNetClasses () const |
| const std::map< wxString, COLOR4D > & | GetNetChainColors () const |
| const std::map< wxString, CHAIN_TERMINALS > & | GetNetChainTerminalRefs () const |
| const std::map< wxString, std::set< wxString > > & | GetNetChainMemberNets () const |
Private Attributes | |
| int | m_requiredVersion |
| Set to the symbol library file version required. | |
| wxString | m_generatorVersion |
| int | m_unit |
| The current unit being parsed. | |
| int | m_bodyStyle |
| The current body style being parsed. | |
| wxString | m_symbolName |
| The current symbol name. | |
| bool | m_appending |
| Appending load status. | |
| bool | m_sheetLoad |
| Loading a sheet into an already open schematic. | |
| std::set< KIID > | m_uuids |
| PROGRESS_REPORTER * | m_progressReporter |
| const LINE_READER * | m_lineReader |
| unsigned | m_lastProgressLine |
| unsigned | m_lineCount |
| KIID | m_rootUuid |
| SCH_SHEET * | m_rootSheet |
| The rootsheet for full project loads or null for importing a schematic. | |
| int | m_maxError |
| Max deviation allowed when approximating bezier curves. | |
| std::vector< GROUP_INFO > | m_groupInfos |
| std::vector< wxString > | m_parseWarnings |
| Non-fatal warnings collected during parsing. | |
| std::map< wxString, wxString > | m_netChainNetClasses |
| std::map< wxString, COLOR4D > | m_netChainColors |
| std::map< wxString, CHAIN_TERMINALS > | m_netChainTerminalRefs |
| std::map< wxString, std::set< wxString > > | m_netChainMemberNets |
Object to parser s-expression symbol library and schematic file formats.
Definition at line 79 of file sch_io_kicad_sexpr_parser.h.
| using SCH_IO_KICAD_SEXPR_PARSER::CHAIN_TERMINALS = std::pair<CHAIN_TERMINAL, CHAIN_TERMINAL> |
Definition at line 142 of file sch_io_kicad_sexpr_parser.h.
| SCH_IO_KICAD_SEXPR_PARSER::SCH_IO_KICAD_SEXPR_PARSER | ( | LINE_READER * | aLineReader = nullptr, |
| PROGRESS_REPORTER * | aProgressReporter = nullptr, | ||
| unsigned | aLineCount = 0, | ||
| SCH_SHEET * | aRootSheet = nullptr, | ||
| bool | aIsAppending = false, | ||
| bool | aIsSheetLoad = false ) |
Definition at line 77 of file sch_io_kicad_sexpr_parser.cpp.
References ARC_LOW_DEF_MM, IU_PER_MM, m_appending, m_bodyStyle, m_lastProgressLine, m_lineCount, m_lineReader, m_maxError, m_progressReporter, m_requiredVersion, m_rootSheet, m_sheetLoad, m_unit, and schIUScale.
|
private |
Definition at line 97 of file sch_io_kicad_sexpr_parser.cpp.
References m_lastProgressLine, m_lineCount, m_lineReader, m_progressReporter, and THROW_IO_CANCELLED.
Referenced by ParseSchematic().
|
inline |
Definition at line 132 of file sch_io_kicad_sexpr_parser.h.
References m_netChainColors.
Referenced by SCH_IO_KICAD_SEXPR::LoadContent(), SCH_IO_KICAD_SEXPR::loadFile(), and KI_TEST::ReadSchematicFromStream().
|
inline |
Definition at line 148 of file sch_io_kicad_sexpr_parser.h.
References m_netChainMemberNets.
Referenced by SCH_IO_KICAD_SEXPR::LoadContent(), SCH_IO_KICAD_SEXPR::loadFile(), and KI_TEST::ReadSchematicFromStream().
|
inline |
Definition at line 126 of file sch_io_kicad_sexpr_parser.h.
References m_netChainNetClasses.
Referenced by SCH_IO_KICAD_SEXPR::LoadContent(), SCH_IO_KICAD_SEXPR::loadFile(), and KI_TEST::ReadSchematicFromStream().
|
inline |
Definition at line 144 of file sch_io_kicad_sexpr_parser.h.
References m_netChainTerminalRefs.
Referenced by SCH_IO_KICAD_SEXPR::LoadContent(), SCH_IO_KICAD_SEXPR::loadFile(), and KI_TEST::ReadSchematicFromStream().
|
inline |
Definition at line 117 of file sch_io_kicad_sexpr_parser.h.
References m_requiredVersion.
Referenced by SCH_IO_KICAD_SEXPR_LIB_CACHE::Load().
|
inline |
Return any non-fatal parse warnings that occurred during parsing.
These are errors that were handled gracefully but should be reported to the user.
Definition at line 123 of file sch_io_kicad_sexpr_parser.h.
References m_parseWarnings.
Referenced by SCH_IO_KICAD_SEXPR_LIB_CACHE::Load().
|
private |
(associated_footprints (footprint "<lib_id>" (map "STD-8")) ; map is optional ... )
Definition at line 1150 of file sch_io_kicad_sexpr_parser.cpp.
References ASSOCIATED_FOOTPRINT::m_FootprintLibId, ASSOCIATED_FOOTPRINT::m_MapName, LIB_ID::Parse(), and T.
Referenced by parseLibSymbol().
|
private |
Definition at line 1031 of file sch_io_kicad_sexpr_parser.cpp.
References _, T, and THROW_PARSE_ERROR.
Referenced by parseLibSymbol().
|
private |
Definition at line 131 of file sch_io_kicad_sexpr_parser.cpp.
References T.
Referenced by parseBusEntry(), parseEllipseBody(), parseGroup(), parseImage(), parseJunction(), parseLibSymbol(), parseLine(), parseNoConnect(), parsePinNames(), parsePinNumbers(), parseProperty(), parseSchArc(), parseSchBezier(), parseSchCircle(), ParseSchematic(), parseSchematicSymbol(), parseSchField(), parseSchPolyLine(), parseSchRectangle(), parseSchRuleArea(), parseSchTable(), parseSchText(), parseSchTextBoxContent(), parseSheet(), and parseSymbolPin().
|
private |
Definition at line 5965 of file sch_io_kicad_sexpr_parser.cpp.
References SCH_SCREEN::AddBusAlias(), ConvertToNewOverbarNotation(), m_requiredVersion, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 4687 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, parseBool(), parseCustomProperty(), parseInternalUnits(), parseKIID(), parseStroke(), parseXY(), schIUScale, T, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by ParseSchematic().
|
private |
Definition at line 146 of file sch_io_kicad_sexpr_parser.cpp.
References EDA_ITEM::SetCustomProperty().
Referenced by parseBusEntry(), parseGroup(), parseImage(), parseJunction(), parseLine(), parseNoConnect(), parseProperty(), parseSchematicSymbol(), parseSchField(), parseSchRuleArea(), parseSchTable(), parseSchText(), parseSchTextBoxContent(), parseSheet(), parseSymbolPin(), parseSymbolText(), and parseSymbolTextBox().
|
private |
Definition at line 157 of file sch_io_kicad_sexpr_parser.cpp.
|
private |
Definition at line 865 of file sch_io_kicad_sexpr_parser.cpp.
References _, KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, ConvertToNewOverbarNotation(), KIGFX::COLOR4D::g, EDA_TEXT::GetText(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_H_ALIGN_LEFT, GR_TEXT_H_ALIGN_RIGHT, GR_TEXT_V_ALIGN_BOTTOM, GR_TEXT_V_ALIGN_CENTER, GR_TEXT_V_ALIGN_TOP, m_requiredVersion, EDA_TEXT::MigrateLegacyBoldStrokeWidth(), parseDouble(), parseInt(), parseInternalUnits(), parseMaybeAbsentBool(), KIGFX::COLOR4D::r, EDA_TEXT::SetBoldFlag(), EDA_TEXT::SetHorizJustify(), EDA_TEXT::SetHyperlink(), EDA_TEXT::SetItalicFlag(), EDA_TEXT::SetLineSpacing(), EDA_TEXT::SetText(), EDA_TEXT::SetTextColor(), EDA_TEXT::SetTextSize(), EDA_TEXT::SetTextThickness(), EDA_TEXT::SetUnresolvedFontName(), EDA_TEXT::SetVertJustify(), EDA_TEXT::SetVisible(), T, THROW_PARSE_ERROR, COLOR4D::UNSPECIFIED, EDA_TEXT::ValidateHyperlink(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by parseProperty(), parseSchField(), parseSchSheetPin(), parseSchText(), parseSchTextBoxContent(), parseSymbolPin(), parseSymbolText(), and parseSymbolTextBox().
|
private |
Definition at line 5339 of file sch_io_kicad_sexpr_parser.cpp.
References ANGLE_0, ANGLE_90, center, DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, fixupSchFillMode(), FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_ITEM::m_Uuid, parseBool(), parseDouble(), parseFill(), parseInternalUnits(), parseStroke(), parseXY(), schIUScale, EDA_SHAPE::SetEllipseCenter(), EDA_SHAPE::SetEllipseEndAngle(), EDA_SHAPE::SetEllipseMajorRadius(), EDA_SHAPE::SetEllipseMinorRadius(), EDA_SHAPE::SetEllipseRotation(), EDA_SHAPE::SetEllipseStartAngle(), EDA_SHAPE::SetFillColor(), EDA_SHAPE::SetFillMode(), SCH_ITEM::SetLocked(), SCH_SHAPE::SetStroke(), and T.
Referenced by parseSchEllipse(), parseSchEllipseArc(), parseSymbolEllipse(), and parseSymbolEllipseArc().
|
private |
Definition at line 806 of file sch_io_kicad_sexpr_parser.cpp.
References KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, CROSS_HATCH, FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, KIGFX::COLOR4D::g, HATCH, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, NO_FILL, parseDouble(), parseInt(), KIGFX::COLOR4D::r, REVERSE_HATCH, T, and COLOR4D::UNSPECIFIED.
Referenced by parseEllipseBody(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchPolyLine(), parseSchRectangle(), parseSchTextBoxContent(), parseSheet(), parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolPolyLine(), parseSymbolRectangle(), and parseSymbolTextBox().
|
private |
Definition at line 6123 of file sch_io_kicad_sexpr_parser.cpp.
References _, SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::customProperties, SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::libId, SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::locked, m_groupInfos, name, SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::name, LIB_ID::Parse(), parseBool(), parseCustomProperty(), parseGroupMembers(), parseKIID(), T, THROW_PARSE_ERROR, and SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::uuid.
Referenced by ParseSchematic().
|
private |
Definition at line 6108 of file sch_io_kicad_sexpr_parser.cpp.
References SCH_IO_KICAD_SEXPR_PARSER::GROUP_INFO::memberUuids, and T.
Referenced by parseGroup().
|
private |
Definition at line 1006 of file sch_io_kicad_sexpr_parser.cpp.
References _, m_requiredVersion, parseInt(), T, and THROW_PARSE_ERROR.
Referenced by ParseLib(), and ParseSchematic().
|
inlineprivate |
Definition at line 176 of file sch_io_kicad_sexpr_parser.h.
|
private |
Definition at line 4154 of file sch_io_kicad_sexpr_parser.cpp.
References _, REFERENCE_IMAGE::GetImage(), REFERENCE_IMAGE::GetImageScale(), BITMAP_BASE::GetPPI(), image, m_requiredVersion, parseBool(), parseCustomProperty(), parseDouble(), parseKIID(), parseXY(), REFERENCE_IMAGE::ReadImageFile(), scale, REFERENCE_IMAGE::SetImageScale(), T, and THROW_IO_ERROR.
Referenced by ParseSchematic().
|
inlineprivate |
Definition at line 182 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseEDA_TEXT(), parseFill(), parseHeader(), parseInt(), parseJunction(), parseProperty(), parseSchematicSymbol(), parseSchField(), parseSchNetChain(), parseSchSymbolInstances(), parseSchTable(), parseSchTextBoxContent(), parseSymbolPin(), and parseTITLE_BLOCK().
|
inlineprivate |
Definition at line 187 of file sch_io_kicad_sexpr_parser.h.
References parseInt().
|
private |
Definition at line 724 of file sch_io_kicad_sexpr_parser.cpp.
References KiROUND(), parseDouble(), and schIUScale.
Referenced by parseBusEntry(), parseEDA_TEXT(), parseEllipseBody(), parseInternalUnits(), parseJunction(), parseLineEnding(), parseMargins(), parsePinNames(), parseSchCircle(), parseSchTable(), parseSchText(), parseSheet(), parseSymbolArc(), parseSymbolCircle(), parseSymbolPin(), and parseXY().
|
private |
Definition at line 737 of file sch_io_kicad_sexpr_parser.cpp.
References KiROUND(), parseDouble(), and schIUScale.
|
inlineprivate |
Definition at line 197 of file sch_io_kicad_sexpr_parser.h.
References parseInternalUnits().
|
private |
Definition at line 4576 of file sch_io_kicad_sexpr_parser.cpp.
References KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, KIGFX::COLOR4D::g, parseBool(), parseCustomProperty(), parseDouble(), parseInt(), parseInternalUnits(), parseKIID(), parseXY(), KIGFX::COLOR4D::r, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 118 of file sch_io_kicad_sexpr_parser.cpp.
References m_uuids.
Referenced by parseBusEntry(), parseGroup(), parseImage(), parseJunction(), parseLine(), parseNoConnect(), parseSchArc(), parseSchBezier(), parseSchCircle(), ParseSchematic(), parseSchematicSymbol(), parseSchPolyLine(), parseSchRectangle(), parseSchSheetPin(), parseSchTable(), parseSchText(), parseSchTextBoxContent(), and parseSheet().
| void SCH_IO_KICAD_SEXPR_PARSER::ParseLib | ( | LIB_SYMBOL_MAP & | aSymbolLibMap | ) |
Definition at line 202 of file sch_io_kicad_sexpr_parser.cpp.
References _, LIB_SYMBOL::GetName(), m_bodyStyle, m_generatorVersion, m_parseWarnings, m_requiredVersion, m_unit, parseHeader(), parseLibSymbol(), SEXPR_SYMBOL_LIB_FILE_VERSION, skipToBlockEnd(), T, and IO_ERROR::What().
Referenced by BOOST_AUTO_TEST_CASE(), SCH_IO_KICAD_SEXPR_LIB_CACHE::Load(), and parseStdin().
|
private |
Definition at line 343 of file sch_io_kicad_sexpr_parser.cpp.
References _, DSN_EOF, DSN_LEFT, DSN_RIGHT, DSN_STRING, m_bodyStyle, m_parseWarnings, m_requiredVersion, m_symbolName, m_unit, name, NO_RECURSE, LIB_ID::Parse(), parseAssociatedFootprints(), parseBodyStyles(), parseBool(), EMBEDDED_FILES_PARSER::ParseEmbedded(), parsePinMaps(), parsePinNames(), parsePinNumbers(), parseProperty(), ParseSymbolDrawItem(), EDA_ITEM::SetParent(), T, THROW_PARSE_ERROR, and IO_ERROR::What().
Referenced by ParseLib(), ParseSchematic(), and ParseSymbol().
|
private |
Definition at line 4856 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_BUS, LAYER_NOTES, LAYER_WIRE, parseBool(), parseCustomProperty(), parseKIID(), parseLineEnding(), parseStroke(), parseXY(), schIUScale, and T.
Referenced by ParseSchematic().
|
private |
Parse a line ending definition from the token stream.
| aEnding | A reference to the LINE_ENDING structure to write to. |
Definition at line 757 of file sch_io_kicad_sexpr_parser.cpp.
References ARROW, ARROW_OPEN, CIRCLE, NONE, parseInternalUnits(), parseStroke(), LINE_ENDING::SetLength(), LINE_ENDING::SetStroke(), LINE_ENDING::SetStyle(), LINE_ENDING::SetWidth(), SQUARE, and T.
Referenced by parseLine(), parseSchArc(), parseSchBezier(), parseSchPolyLine(), parseSymbolArc(), parseSymbolBezier(), and parseSymbolPolyLine().
|
inlineprivate |
Definition at line 248 of file sch_io_kicad_sexpr_parser.h.
References parseInternalUnits().
Referenced by parseSchTextBoxContent(), and parseSymbolTextBox().
|
private |
Parses a boolean flag inside a list that existed before boolean normalization.
For example, this will handle both (legacy_teardrops) and (legacy_teardrops yes). Call this after parsing the T_legacy_teardrops, and aDefaultValue will be returned for the first case, or true will be returned for the second case.
| aDefaultValue | will be returned if the end of the list is encountered as the next token |
Definition at line 171 of file sch_io_kicad_sexpr_parser.cpp.
Referenced by parseEDA_TEXT(), parseProperty(), parseSchematicSymbol(), parseSchField(), parseSchText(), and parseSheet().
|
private |
Definition at line 4641 of file sch_io_kicad_sexpr_parser.cpp.
References parseBool(), parseCustomProperty(), parseKIID(), parseXY(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 1242 of file sch_io_kicad_sexpr_parser.cpp.
References PIN_MAP::SetEntry(), and T.
Referenced by parsePinMaps().
|
private |
Definition at line 2586 of file sch_io_kicad_sexpr_parser.cpp.
References _, PAGE_INFO::GetType(), m_requiredVersion, MAX_PAGE_SIZE_EESCHEMA_MM, MIN_PAGE_SIZE_MM, parseDouble(), PAGE_INFO::SetHeightMM(), PAGE_INFO::SetPortrait(), PAGE_INFO::SetType(), PAGE_INFO::SetWidthMM(), T, THROW_PARSE_ERROR, and User.
Referenced by ParseSchematic().
|
private |
(pin_map_override (mode library_default|named_map|identity|delegate) (map "<name>") ; only with named_map (edit "<pin>" "<pad>") ... )
Definition at line 1285 of file sch_io_kicad_sexpr_parser.cpp.
References DELEGATE_TO_UNIT_1, FORCE_IDENTITY, T, USE_LIBRARY_DEFAULT, and USE_NAMED_MAP.
Referenced by parseSchematicSymbol().
|
private |
(pin_maps (pin_map "STD-8" (entry "1" "1") (entry "4" "[4,9]") ...) ... )
Definition at line 1212 of file sch_io_kicad_sexpr_parser.cpp.
References PIN_MAP_SET::AddOrReplace(), parseOnePinMap(), and T.
Referenced by parseLibSymbol().
|
private |
(pin_names (offset 123) ; optional (hide yes/no) ; optional hide ; optional, pre-20241004 )
Definition at line 1059 of file sch_io_kicad_sexpr_parser.cpp.
References parseBool(), parseInternalUnits(), and T.
Referenced by parseLibSymbol().
|
private |
(pin_numbers (hide yes/no) ; optional hide ; optional (pre-20241004) )
Definition at line 1107 of file sch_io_kicad_sexpr_parser.cpp.
References parseBool(), and T.
Referenced by parseLibSymbol().
|
private |
Definition at line 1394 of file sch_io_kicad_sexpr_parser.cpp.
References _, DEGREES_T, GetDefaultFieldName(), m_requiredVersion, MANDATORY_FIELDS, name, parseBool(), parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseInt(), parseMaybeAbsentBool(), parseXY(), T, THROW_PARSE_ERROR, UnescapeString(), UNTRANSLATED, USER, and VALUE.
Referenced by parseLibSymbol().
|
private |
Definition at line 4949 of file sch_io_kicad_sexpr_parser.cpp.
References ARC, DEFAULT, DEFAULT_LINE_WIDTH_MILS, fixupSchFillMode(), FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, parseBool(), parseFill(), parseKIID(), parseLineEnding(), parseStroke(), parseXY(), schIUScale, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 5243 of file sch_io_kicad_sexpr_parser.cpp.
References BEZIER, DEFAULT, DEFAULT_LINE_WIDTH_MILS, fixupSchFillMode(), FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_maxError, parseBool(), parseFill(), parseKIID(), parseLineEnding(), parseStroke(), parseXY(), schIUScale, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 5035 of file sch_io_kicad_sexpr_parser.cpp.
References center, CIRCLE, circle(), DEFAULT, DEFAULT_LINE_WIDTH_MILS, fixupSchFillMode(), FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, parseBool(), parseFill(), parseInternalUnits(), parseKIID(), parseStroke(), parseXY(), radius, schIUScale, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 5445 of file sch_io_kicad_sexpr_parser.cpp.
References ELLIPSE, and parseEllipseBody().
Referenced by ParseSchematic().
|
private |
Definition at line 5456 of file sch_io_kicad_sexpr_parser.cpp.
References ELLIPSE_ARC, and parseEllipseBody().
Referenced by ParseSchematic().
| void SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic | ( | SCH_SHEET * | aSheet, |
| bool | aIsCopyablyOnly = false, | ||
| int | aFileVersion = SEXPR_SCHEMATIC_FILE_VERSION ) |
Parse the internal LINE_READER object into aSheet.
When aIsCopyableOnly is true, only schematic objects that are viewable on the canvas for copy and paste purposes are parsed. Other schematic content such as bus definitions or instance data will throw an IO_ERROR exception.
When aIsCopyableOnly is false, full schematic file parsing is performed.
| aSheet | The SCH_SHEET object to store the parsed schematic file. |
| aIsCopyableOnly | Load only the schematic objects that can be copied into aSheet if true. Otherwise, load the full schematic file format. |
| aFileVersion | The schematic file version to parser. Defaults to the schematic file being parsed when aIsCopyableOnly is false. |
Definition at line 3172 of file sch_io_kicad_sexpr_parser.cpp.
References _, SCH_SCREEN::AddLibSymbol(), SCH_SCREEN::Append(), checkpoint(), SHAPE_LINE_CHAIN::CPoint(), DSN_EOF, DSN_LEFT, DSN_RIGHT, SCH_SCREEN::FixupEmbeddedData(), Fontconfig(), EMBEDDED_FILES::GetAreFontsEmbedded(), SCHEMATIC::GetEmbeddedFiles(), EDA_SHAPE::GetEndEnding(), EMBEDDED_FILES::GetFontFiles(), EDA_ITEM::GetParent(), EDA_SHAPE::GetPointCount(), EDA_SHAPE::GetPolyShape(), SCH_SHEET::GetScreen(), EDA_SHAPE::GetStartEnding(), SCH_SHAPE::GetStroke(), SCH_SCREEN::GetUuid(), SCH_ITEM::IsLocked(), KI_FALLTHROUGH, LAYER_NOTES, m_generatorVersion, m_maxError, m_parseWarnings, m_requiredVersion, m_rootSheet, m_rootUuid, m_sheetLoad, EDA_ITEM::m_Uuid, SCH_SCREEN::m_uuid, SHAPE_POLY_SET::Outline(), parseBool(), parseBusAlias(), parseBusEntry(), EMBEDDED_FILES_PARSER::ParseEmbedded(), parseGroup(), parseHeader(), parseImage(), parseJunction(), parseKIID(), parseLibSymbol(), parseLine(), parseNoConnect(), parsePAGE_INFO(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchEllipse(), parseSchEllipseArc(), parseSchematicSymbol(), parseSchNetChain(), parseSchPolyLine(), parseSchRectangle(), parseSchRuleArea(), parseSchSheetInstances(), parseSchSymbolInstances(), parseSchTable(), parseSchText(), parseSchTextBox(), parseSheet(), parseTITLE_BLOCK(), Pgm(), resolveGroups(), SCH_SCREEN::Schematic(), EMBEDDED_FILES::SetAreFontsEmbedded(), SCH_LINE::SetEndEnding(), SCH_LINE::SetEndPoint(), SCH_SCREEN::SetFileFormatVersionAtLoad(), SCH_SCREEN::SetLegacySymbolInstanceData(), SCH_ITEM::SetLocked(), SCH_SCREEN::SetPageSettings(), EDA_ITEM::SetParent(), SCH_LINE::SetStartEnding(), SCH_LINE::SetStartPoint(), SCH_LINE::SetStroke(), SCH_SCREEN::SetTitleBlock(), SEXPR_SCHEMATIC_FILE_VERSION, SCH_SHEET::SyncUuidToScreen(), T, THROW_PARSE_ERROR, SCH_SCREEN::UpdateLocalLibSymbolLinks(), and IO_ERROR::What().
Referenced by SCH_IO_KICAD_SEXPR::LoadContent(), SCH_IO_KICAD_SEXPR::loadFile(), and KI_TEST::ReadSchematicFromStream().
|
private |
Definition at line 3595 of file sch_io_kicad_sexpr_parser.cpp.
References _, AUTOPLACE_AUTO, AUTOPLACE_NONE, SCH_SYMBOL::BLOCK, SCH_SYMBOL::DEFAULT, SCH_SYMBOL::FORCE, SCH_FIELD::GetId(), SCH_FIELD::GetName(), SCH_FIELD::GetText(), SCH_FIELD::GetUntranslatedName(), SCH_SYMBOL_VARIANT::InitializeAttributes(), SCH_FIELD::IsMandatory(), VARIANT::m_DNP, VARIANT::m_ExcludedFromBoard, VARIANT::m_ExcludedFromBOM, VARIANT::m_ExcludedFromPosFiles, VARIANT::m_ExcludedFromSim, VARIANT::m_Fields, VARIANT::m_Name, SCH_SYMBOL_INSTANCE::m_Path, SCH_SYMBOL_VARIANT::m_PinMapOverride, SCH_SYMBOL_INSTANCE::m_ProjectName, SCH_SYMBOL_INSTANCE::m_Reference, m_requiredVersion, SCH_SYMBOL_VARIANT::m_SymbolOverride, SCH_SYMBOL_INSTANCE::m_Unit, SCH_SYMBOL_INSTANCE::m_Variants, name, LIB_ID::Parse(), parseBool(), parseCustomProperty(), parseDouble(), parseInt(), parseKIID(), parseMaybeAbsentBool(), parsePinMapOverride(), parseSchField(), parseSymbolOverride(), parseXY(), REFERENCE, SCH_FIELD::SetName(), SIM_LEGACY_ENABLE_FIELD, SIM_LEGACY_ENABLE_FIELD_V7, SYM_MIRROR_X, SYM_MIRROR_Y, T, and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
Definition at line 2742 of file sch_io_kicad_sexpr_parser.cpp.
References _, DEGREES_T, GetDefaultFieldName(), GLOBALLABEL_MANDATORY_FIELDS, INTERSHEET_REFS, SCH_FIELD::IsNetclassLabelFieldName(), m_requiredVersion, MANDATORY_FIELDS, name, parseBool(), parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseInt(), parseMaybeAbsentBool(), parseXY(), SCH_GLOBAL_LABEL_T, SCH_SHEET_T, SCH_SYMBOL_T, SHEET_FILENAME, SHEET_MANDATORY_FIELDS, SHEET_NAME, SHEET_USER, T, THROW_PARSE_ERROR, EDA_ITEM::Type(), UNTRANSLATED, USER, and VALUE.
Referenced by parseSchematicSymbol(), parseSchText(), and parseSheet().
|
private |
Definition at line 6014 of file sch_io_kicad_sexpr_parser.cpp.
References From_UTF8(), m_netChainColors, m_netChainMemberNets, m_netChainNetClasses, m_netChainTerminalRefs, name, parseDouble(), parseInt(), T, COLOR4D::UNSPECIFIED, and KIGFX::COLOR4D::UNSPECIFIED.
Referenced by ParseSchematic().
|
private |
Definition at line 4760 of file sch_io_kicad_sexpr_parser.cpp.
References SHAPE_LINE_CHAIN::CLastPoint(), SHAPE_LINE_CHAIN::CPoint(), DASH, DEFAULT, DEFAULT_LINE_WIDTH_MILS, fixupSchFillMode(), STROKE_PARAMS::GetLineStyle(), LAYER_NOTES, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_requiredVersion, NO_FILL, parseBool(), parseFill(), parseKIID(), parseLineEnding(), parseStroke(), parseXY(), SHAPE_LINE_CHAIN::PointCount(), POLY, schIUScale, STROKE_PARAMS::SetLineStyle(), SHAPE_LINE_CHAIN::SetPoint(), and T.
Referenced by ParseSchematic(), and parseSchRuleArea().
|
private |
Definition at line 5101 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, fixupSchFillMode(), FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, parseBool(), parseDouble(), parseFill(), parseKIID(), parseStroke(), parseXY(), RECTANGLE, schIUScale, and T.
Referenced by ParseSchematic().
|
private |
Definition at line 5167 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, SHAPE_POLY_SET::Outline(), parseBool(), parseCustomProperty(), parseSchPolyLine(), schIUScale, SHAPE_LINE_CHAIN::SetClosed(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 2988 of file sch_io_kicad_sexpr_parser.cpp.
References SCH_SCREEN::GetFileFormatVersionAtLoad(), SCH_SHEET::GetScreen(), m_appending, SCH_SHEET_INSTANCE::m_PageNumber, SCH_SHEET_INSTANCE::m_Path, m_rootUuid, SCH_SCREEN::m_sheetInstances, SCH_SHEET_PATH::push_back(), BASE_SCREEN::SetContentModified(), SCH_SHEET_PATH::SetPageNumber(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 2906 of file sch_io_kicad_sexpr_parser.cpp.
References _, BOTTOM, L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, L_UNSPECIFIED, LEFT, name, parseDouble(), parseEDA_TEXT(), parseKIID(), parseXY(), RIGHT, T, THROW_PARSE_ERROR, and TOP.
Referenced by parseSheet().
|
private |
Definition at line 3085 of file sch_io_kicad_sexpr_parser.cpp.
References m_appending, SCH_SYMBOL_INSTANCE::m_Footprint, SCH_SYMBOL_INSTANCE::m_Path, SCH_SYMBOL_INSTANCE::m_Reference, m_requiredVersion, m_rootUuid, SCH_SCREEN::m_symbolInstances, SCH_SYMBOL_INSTANCE::m_Unit, SCH_SYMBOL_INSTANCE::m_Value, NilUuid(), parseInt(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 5808 of file sch_io_kicad_sexpr_parser.cpp.
References _, DEFAULT, DEFAULT_LINE_WIDTH_MILS, parseBool(), parseCustomProperty(), parseInt(), parseInternalUnits(), parseKIID(), parseSchTableCell(), parseStroke(), schIUScale, T, table, and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
|
private |
Definition at line 5655 of file sch_io_kicad_sexpr_parser.cpp.
References parseSchTextBoxContent().
Referenced by parseSchTable().
|
private |
Definition at line 5467 of file sch_io_kicad_sexpr_parser.cpp.
References AUTOPLACE_AUTO, AUTOPLACE_NONE, SPIN_STYLE::BOTTOM, DEGREES_T, F_DIAMOND, F_DOT, F_RECTANGLE, F_ROUND, SCH_GLOBALLABEL::GetField(), SCH_LABEL_BASE::GetFields(), SCH_FIELD::GetId(), INTERSHEET_REFS, SCH_FIELD::IsMandatory(), L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, L_UNSPECIFIED, SPIN_STYLE::LEFT, parseBool(), parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseInternalUnits(), parseKIID(), parseMaybeAbsentBool(), parseSchField(), parseXY(), SPIN_STYLE::RIGHT, SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_LABEL_T, SCH_TEXT_T, SCH_ITEM::SetFieldsAutoplaced(), SCH_DIRECTIVE_LABEL::SetPinLength(), SCH_LABEL_BASE::SetShape(), EDA_TEXT::SetTextPos(), EDA_TEXT::SetVisible(), T, text, and SPIN_STYLE::UP.
Referenced by ParseSchematic().
|
private |
Definition at line 5642 of file sch_io_kicad_sexpr_parser.cpp.
References parseSchTextBoxContent().
Referenced by ParseSchematic().
|
private |
Definition at line 5668 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, end, fixupSchFillMode(), SCH_TEXTBOX::GetLegacyTextMargin(), left, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_ITEM::m_Uuid, parseBool(), parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseFill(), parseInt(), parseKIID(), parseMargins(), parseStroke(), parseXY(), right, schIUScale, EDA_SHAPE::SetEnd(), SCH_TEXTBOX::SetExcludedFromSim(), EDA_SHAPE::SetFillColor(), EDA_SHAPE::SetFillMode(), SCH_ITEM::SetLocked(), SCH_TEXTBOX::SetMarginBottom(), SCH_TEXTBOX::SetMarginLeft(), SCH_TEXTBOX::SetMarginRight(), SCH_TEXTBOX::SetMarginTop(), SCH_SHAPE::SetPosition(), SCH_SHAPE::SetStroke(), EDA_TEXT::SetText(), EDA_TEXT::SetTextAngle(), T, and top().
Referenced by parseSchTableCell(), and parseSchTextBox().
|
private |
Definition at line 4256 of file sch_io_kicad_sexpr_parser.cpp.
References _, AUTOPLACE_AUTO, AUTOPLACE_NONE, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FindField(), STROKE_PARAMS::GetColor(), STROKE_PARAMS::GetWidth(), SCH_SHEET_VARIANT::InitializeAttributes(), FILL_PARAMS::m_Color, VARIANT::m_DNP, VARIANT::m_ExcludedFromBoard, VARIANT::m_ExcludedFromBOM, VARIANT::m_ExcludedFromPosFiles, VARIANT::m_ExcludedFromSim, VARIANT::m_Fields, VARIANT::m_Name, SCH_SHEET_INSTANCE::m_PageNumber, SCH_SHEET_INSTANCE::m_Path, SCH_SHEET_INSTANCE::m_ProjectName, m_requiredVersion, SCH_SHEET_INSTANCE::m_Variants, parseBool(), parseCustomProperty(), parseFill(), parseInternalUnits(), parseKIID(), parseMaybeAbsentBool(), parseSchField(), parseSchSheetPin(), parseStroke(), parseXY(), schIUScale, SCH_FIELD::setId(), SHEET_FILENAME, SHEET_NAME, T, THROW_PARSE_ERROR, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by ParseSchematic().
|
private |
Parse stroke definition aStroke.
| aStrokeDef | A reference to the STROKE_PARAMS structure to write to. |
Definition at line 747 of file sch_io_kicad_sexpr_parser.cpp.
References STROKE_PARAMS_PARSER::ParseStroke(), and schIUScale.
Referenced by parseBusEntry(), parseEllipseBody(), parseLine(), parseLineEnding(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchPolyLine(), parseSchRectangle(), parseSchTable(), parseSchTextBoxContent(), parseSheet(), parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolPolyLine(), parseSymbolRectangle(), and parseSymbolTextBox().
| LIB_SYMBOL * SCH_IO_KICAD_SEXPR_PARSER::ParseSymbol | ( | LIB_SYMBOL_MAP & | aSymbolLibMap, |
| int | aFileVersion = SEXPR_SYMBOL_LIB_FILE_VERSION ) |
Parse internal LINE_READER object into symbols and return all found.
Definition at line 303 of file sch_io_kicad_sexpr_parser.cpp.
References _, LIB_SYMBOL::GetEmbeddedFiles(), m_requiredVersion, NO_RECURSE, parseLibSymbol(), LIB_SYMBOL::RunOnChildren(), THROW_PARSE_ERROR, and EMBEDDED_FILES::UpdateFontFiles().
Referenced by SCH_IO_KICAD_SEXPR::ParseLibSymbols().
|
private |
Definition at line 1595 of file sch_io_kicad_sexpr_parser.cpp.
References ANGLE_0, ANGLE_180, ANGLE_360, ANGLE_90, ARC, CalcArcCenter(), center, DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, LAYER_DEVICE, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_requiredVersion, m_unit, EDA_ANGLE::Normalize(), parseDouble(), parseFill(), parseInternalUnits(), parseLineEnding(), parseStroke(), parseXY(), schIUScale, and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 1803 of file sch_io_kicad_sexpr_parser.cpp.
References BEZIER, DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_DEVICE, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_maxError, m_unit, parseFill(), parseLineEnding(), parseStroke(), parseXY(), schIUScale, and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 1899 of file sch_io_kicad_sexpr_parser.cpp.
References center, CIRCLE, circle(), DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_DEVICE, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_unit, parseFill(), parseInternalUnits(), parseStroke(), parseXY(), radius, schIUScale, and T.
Referenced by ParseSymbolDrawItem().
| SCH_ITEM * SCH_IO_KICAD_SEXPR_PARSER::ParseSymbolDrawItem | ( | ) |
Definition at line 701 of file sch_io_kicad_sexpr_parser.cpp.
References parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolEllipse(), parseSymbolEllipseArc(), parseSymbolPin(), parseSymbolPolyLine(), parseSymbolRectangle(), parseSymbolText(), and parseSymbolTextBox().
Referenced by parseLibSymbol().
|
private |
Definition at line 1965 of file sch_io_kicad_sexpr_parser.cpp.
References ELLIPSE, LAYER_DEVICE, m_bodyStyle, m_unit, parseEllipseBody(), and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 1987 of file sch_io_kicad_sexpr_parser.cpp.
References ELLIPSE_ARC, LAYER_DEVICE, m_bodyStyle, m_unit, parseEllipseBody(), and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 1361 of file sch_io_kicad_sexpr_parser.cpp.
References _, name, LIB_ID::Parse(), T, and THROW_PARSE_ERROR.
Referenced by parseSchematicSymbol().
|
private |
Definition at line 2009 of file sch_io_kicad_sexpr_parser.cpp.
References _, CLOCK, CLOCK_LOW, ConvertToNewOverbarNotation(), FALLING_EDGE_CLOCK, INPUT_LOW, INVERTED, INVERTED_CLOCK, LINE, m_bodyStyle, PIN_ALTERNATE::m_Name, m_requiredVersion, PIN_ALTERNATE::m_Shape, PIN_ALTERNATE::m_Type, m_unit, NONLOGIC, OUTPUT_LOW, parseBool(), parseCustomProperty(), parseEDA_TEXT(), parseInt(), parseInternalUnits(), parseXY(), pin, PIN_DOWN, PIN_LEFT, PIN_RIGHT, PIN_UP, PT_BIDI, PT_INPUT, PT_NC, PT_NIC, PT_OPENCOLLECTOR, PT_OPENEMITTER, PT_OUTPUT, PT_PASSIVE, PT_POWER_IN, PT_POWER_OUT, PT_TRISTATE, PT_UNSPECIFIED, schIUScale, T, text, and THROW_PARSE_ERROR.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 2237 of file sch_io_kicad_sexpr_parser.cpp.
References SHAPE_LINE_CHAIN::CLastPoint(), SHAPE_LINE_CHAIN::CPoint(), DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_DEVICE, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_unit, NO_FILL, parseFill(), parseLineEnding(), parseStroke(), parseXY(), SHAPE_LINE_CHAIN::PointCount(), POLY, schIUScale, SHAPE_LINE_CHAIN::SetPoint(), and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 2330 of file sch_io_kicad_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_DEVICE, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_unit, parseDouble(), parseFill(), parseStroke(), parseXY(), RECTANGLE, schIUScale, and T.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 2395 of file sch_io_kicad_sexpr_parser.cpp.
References _, LAYER_DEVICE, m_bodyStyle, m_unit, parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseXY(), T, TENTHS_OF_A_DEGREE_T, text, THROW_PARSE_ERROR, and USER.
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 2459 of file sch_io_kicad_sexpr_parser.cpp.
References _, DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, end, LAYER_DEVICE, left, m_bodyStyle, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, m_unit, parseCustomProperty(), parseDouble(), parseEDA_TEXT(), parseFill(), parseMargins(), parseStroke(), parseXY(), right, schIUScale, T, THROW_PARSE_ERROR, and top().
Referenced by ParseSymbolDrawItem().
|
private |
Definition at line 2638 of file sch_io_kicad_sexpr_parser.cpp.
References _, parseInt(), TITLE_BLOCK::SetComment(), TITLE_BLOCK::SetCompany(), TITLE_BLOCK::SetDate(), TITLE_BLOCK::SetRevision(), TITLE_BLOCK::SetTitle(), T, and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
|
inlineprivate |
Definition at line 202 of file sch_io_kicad_sexpr_parser.h.
References parseInternalUnits(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by parseBusEntry(), parseEllipseBody(), parseImage(), parseJunction(), parseLine(), parseNoConnect(), parseProperty(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchematicSymbol(), parseSchField(), parseSchPolyLine(), parseSchRectangle(), parseSchSheetPin(), parseSchText(), parseSchTextBoxContent(), parseSheet(), parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolPin(), parseSymbolPolyLine(), parseSymbolRectangle(), parseSymbolText(), and parseSymbolTextBox().
|
private |
Definition at line 6211 of file sch_io_kicad_sexpr_parser.cpp.
References SCH_SCREEN::Append(), group, SCH_SCREEN::GroupsSanityCheck(), SCH_SCREEN::Items(), m_groupInfos, and SCH_GROUP_T.
Referenced by ParseSchematic().
|
private |
Skip tokens until we reach the end of the current S-expression block.
This is used for error recovery when parsing fails mid-symbol. The parser will consume tokens until the matching closing parenthesis is found, allowing parsing to continue with the next symbol.
| aDepth | The initial nesting depth (1 = inside one open paren) |
Definition at line 6273 of file sch_io_kicad_sexpr_parser.cpp.
References T.
Referenced by ParseLib().
|
private |
Appending load status.
Definition at line 335 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseSchSheetInstances(), parseSchSymbolInstances(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
The current body style being parsed.
Definition at line 333 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseLib(), parseLibSymbol(), parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolEllipse(), parseSymbolEllipseArc(), parseSymbolPin(), parseSymbolPolyLine(), parseSymbolRectangle(), parseSymbolText(), parseSymbolTextBox(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 331 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseLib(), and ParseSchematic().
|
private |
Definition at line 353 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseGroup(), and resolveGroups().
|
private |
Definition at line 342 of file sch_io_kicad_sexpr_parser.h.
Referenced by checkpoint(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 343 of file sch_io_kicad_sexpr_parser.h.
Referenced by checkpoint(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 341 of file sch_io_kicad_sexpr_parser.h.
Referenced by checkpoint(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Max deviation allowed when approximating bezier curves.
Definition at line 351 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseSchBezier(), ParseSchematic(), parseSymbolBezier(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 358 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainColors(), and parseSchNetChain().
|
private |
Definition at line 360 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainMemberNets(), and parseSchNetChain().
|
private |
Definition at line 357 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainNetClasses(), and parseSchNetChain().
|
private |
Definition at line 359 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainTerminalRefs(), and parseSchNetChain().
|
private |
Non-fatal warnings collected during parsing.
Definition at line 355 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetParseWarnings(), ParseLib(), parseLibSymbol(), and ParseSchematic().
|
private |
Definition at line 340 of file sch_io_kicad_sexpr_parser.h.
Referenced by checkpoint(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Set to the symbol library file version required.
Definition at line 330 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetParsedRequiredVersion(), parseBusAlias(), parseEDA_TEXT(), parseHeader(), parseImage(), ParseLib(), parseLibSymbol(), parsePAGE_INFO(), parseProperty(), ParseSchematic(), parseSchematicSymbol(), parseSchField(), parseSchPolyLine(), parseSchSymbolInstances(), parseSheet(), ParseSymbol(), parseSymbolArc(), parseSymbolPin(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
The rootsheet for full project loads or null for importing a schematic.
Definition at line 348 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseSchematic(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 345 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseSchematic(), parseSchSheetInstances(), and parseSchSymbolInstances().
|
private |
Loading a sheet into an already open schematic.
Definition at line 336 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseSchematic(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
The current symbol name.
Definition at line 334 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseLibSymbol().
|
private |
The current unit being parsed.
Definition at line 332 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseLib(), parseLibSymbol(), parseSymbolArc(), parseSymbolBezier(), parseSymbolCircle(), parseSymbolEllipse(), parseSymbolEllipseArc(), parseSymbolPin(), parseSymbolPolyLine(), parseSymbolRectangle(), parseSymbolText(), parseSymbolTextBox(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 338 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseKIID().