|
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 aIsCopyableOnly=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 80 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 143 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 133 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 149 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 127 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 145 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 118 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 124 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 1161 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 1042 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 5987 of file sch_io_kicad_sexpr_parser.cpp.
References SCH_SCREEN::AddBusAlias(), ConvertToNewOverbarNotation(), SCHEMATIC::HasProjectBusAliases(), m_appending, m_requiredVersion, m_sheetLoad, SCH_SCREEN::Schematic(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 4698 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 876 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 5350 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 817 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 6150 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 6135 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 1017 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 177 of file sch_io_kicad_sexpr_parser.h.
|
private |
Definition at line 4165 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 183 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 188 of file sch_io_kicad_sexpr_parser.h.
References parseInt().
|
private |
Definition at line 735 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 748 of file sch_io_kicad_sexpr_parser.cpp.
References KiROUND(), parseDouble(), and schIUScale.
|
inlineprivate |
Definition at line 198 of file sch_io_kicad_sexpr_parser.h.
References parseInternalUnits().
|
private |
Definition at line 4587 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 _, JUMPER_GROUP_SET::Add(), DSN_EOF, DSN_LEFT, DSN_RIGHT, DSN_STRING, group, m_bodyStyle, m_parseWarnings, m_requiredVersion, m_symbolName, m_unit, JUMPER_GROUP::Make(), 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 4867 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 768 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 249 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 4652 of file sch_io_kicad_sexpr_parser.cpp.
References parseBool(), parseCustomProperty(), parseKIID(), parseXY(), and T.
Referenced by ParseSchematic().
|
private |
Definition at line 1253 of file sch_io_kicad_sexpr_parser.cpp.
References PIN_MAP::SetEntry(), and T.
Referenced by parsePinMaps().
|
private |
Definition at line 2597 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 1296 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 1223 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 1070 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 1118 of file sch_io_kicad_sexpr_parser.cpp.
References parseBool(), and T.
Referenced by parseLibSymbol().
|
private |
Definition at line 1405 of file sch_io_kicad_sexpr_parser.cpp.
References _, DEGREES_T, filters, 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 4960 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 5254 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 5046 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 5456 of file sch_io_kicad_sexpr_parser.cpp.
References ELLIPSE, and parseEllipseBody().
Referenced by ParseSchematic().
|
private |
Definition at line 5467 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 | aIsCopyableOnly = 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 3183 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 3606 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 2753 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 6041 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 4771 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 5112 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 5178 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 2999 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 2917 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 3096 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 5819 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 5666 of file sch_io_kicad_sexpr_parser.cpp.
References parseSchTextBoxContent().
Referenced by parseSchTable().
|
private |
Definition at line 5478 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 5653 of file sch_io_kicad_sexpr_parser.cpp.
References parseSchTextBoxContent().
Referenced by ParseSchematic().
|
private |
Definition at line 5679 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 4267 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.
| aStroke | A reference to the STROKE_PARAMS structure to write to. |
Definition at line 758 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 1606 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 1814 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 1910 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 712 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 1976 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 1998 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 1372 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 2020 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 2248 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 2341 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 2406 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 2470 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 2649 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 203 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 6238 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 6300 of file sch_io_kicad_sexpr_parser.cpp.
References T.
Referenced by ParseLib().
|
private |
Appending load status.
Definition at line 336 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseBusAlias(), parseSchSheetInstances(), parseSchSymbolInstances(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
The current body style being parsed.
Definition at line 334 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 332 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseLib(), and ParseSchematic().
|
private |
Definition at line 354 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseGroup(), and resolveGroups().
|
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 344 of file sch_io_kicad_sexpr_parser.h.
Referenced by checkpoint(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 342 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 352 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseSchBezier(), ParseSchematic(), parseSymbolBezier(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 359 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainColors(), and parseSchNetChain().
|
private |
Definition at line 361 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainMemberNets(), and parseSchNetChain().
|
private |
Definition at line 358 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainNetClasses(), and parseSchNetChain().
|
private |
Definition at line 360 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetNetChainTerminalRefs(), and parseSchNetChain().
|
private |
Non-fatal warnings collected during parsing.
Definition at line 356 of file sch_io_kicad_sexpr_parser.h.
Referenced by GetParseWarnings(), ParseLib(), parseLibSymbol(), and ParseSchematic().
|
private |
Definition at line 341 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 331 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 349 of file sch_io_kicad_sexpr_parser.h.
Referenced by ParseSchematic(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
Definition at line 346 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 337 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseBusAlias(), ParseSchematic(), and SCH_IO_KICAD_SEXPR_PARSER().
|
private |
The current symbol name.
Definition at line 335 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseLibSymbol().
|
private |
The current unit 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 339 of file sch_io_kicad_sexpr_parser.h.
Referenced by parseKIID().