KiCad PCB EDA Suite
|
Object to parser s-expression symbol library and schematic file formats. More...
#include <sch_sexpr_parser.h>
Public Member Functions | |
SCH_SEXPR_PARSER (LINE_READER *aLineReader=nullptr, PROGRESS_REPORTER *aProgressReporter=nullptr, unsigned aLineCount=0, SCH_SHEET *aRootSheet=nullptr, bool aIsAppending=false) | |
void | ParseLib (LIB_SYMBOL_MAP &aSymbolLibMap) |
LIB_SYMBOL * | ParseSymbol (LIB_SYMBOL_MAP &aSymbolLibMap, int aFileVersion=SEXPR_SYMBOL_LIB_FILE_VERSION) |
LIB_ITEM * | ParseDrawItem () |
void | ParseSchematic (SCH_SHEET *aSheet, bool aIsCopyablyOnly=false, int aFileVersion=SEXPR_SCHEMATIC_FILE_VERSION) |
Parse the internal LINE_READER object into aSheet. More... | |
int | GetParsedRequiredVersion () const |
Private Attributes | |
int | m_requiredVersion |
Set to the symbol library file version required. More... | |
int | m_fieldId |
The current field ID. More... | |
int | m_unit |
The current unit being parsed. More... | |
int | m_convert |
The current body style being parsed. More... | |
wxString | m_symbolName |
The current symbol name. More... | |
bool | m_appending |
Appending load status. More... | |
std::set< int > | m_fieldIDsRead |
Field IDs that have been read so far for the current symbol. More... | |
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. More... | |
Object to parser s-expression symbol library and schematic file formats.
Definition at line 77 of file sch_sexpr_parser.h.
SCH_SEXPR_PARSER::SCH_SEXPR_PARSER | ( | LINE_READER * | aLineReader = nullptr , |
PROGRESS_REPORTER * | aProgressReporter = nullptr , |
||
unsigned | aLineCount = 0 , |
||
SCH_SHEET * | aRootSheet = nullptr , |
||
bool | aIsAppending = false |
||
) |
Definition at line 67 of file sch_sexpr_parser.cpp.
|
private |
Definition at line 85 of file sch_sexpr_parser.cpp.
References PROGRESS_REPORTER::KeepRefreshing(), LINE_READER::LineNumber(), m_lastProgressLine, m_lineCount, m_lineReader, m_progressReporter, PROGRESS_REPORTER::SetCurrentProgress(), and THROW_IO_ERROR.
Referenced by ParseSchematic().
|
inline |
Definition at line 111 of file sch_sexpr_parser.h.
References m_requiredVersion.
Referenced by SCH_SEXPR_PLUGIN_CACHE::Load().
|
private |
Definition at line 939 of file sch_sexpr_parser.cpp.
References ANGLE_0, ANGLE_180, ANGLE_360, ANGLE_90, ARC, CalcArcCenter(), DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, FILL_PARAMS::m_Color, m_convert, FILL_PARAMS::m_FillType, m_unit, EDA_IU_SCALE::MilsToIU(), EDA_ANGLE::Normalize(), parseDouble(), parseFill(), parseInternalUnits(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseDrawItem().
|
private |
Definition at line 1125 of file sch_sexpr_parser.cpp.
References BEZIER, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, m_convert, FILL_PARAMS::m_FillType, m_unit, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseDrawItem().
|
private |
Definition at line 120 of file sch_sexpr_parser.cpp.
Referenced by parseSchematicSymbol(), and ParseSymbol().
|
private |
Definition at line 3963 of file sch_sexpr_parser.cpp.
References SCH_SCREEN::AddBusAlias(), ConvertToNewOverbarNotation(), and m_requiredVersion.
Referenced by ParseSchematic().
|
private |
Definition at line 3267 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, EDA_IU_SCALE::MilsToIU(), parseInternalUnits(), parseKIID(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 1206 of file sch_sexpr_parser.cpp.
References CIRCLE, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, m_convert, FILL_PARAMS::m_FillType, m_unit, EDA_IU_SCALE::MilsToIU(), parseFill(), parseInternalUnits(), parseStroke(), parseXY(), schIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by ParseDrawItem().
LIB_ITEM * SCH_SEXPR_PARSER::ParseDrawItem | ( | ) |
Definition at line 408 of file sch_sexpr_parser.cpp.
References parseArc(), parseBezier(), parseCircle(), parsePin(), parsePolyLine(), parseRectangle(), parseText(), and parseTextBox().
Referenced by ParseSymbol().
|
private |
Definition at line 540 of file sch_sexpr_parser.cpp.
References _, Clamp(), color, ConvertToNewOverbarNotation(), Format(), KIFONT::FONT::GetFont(), 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, EDA_TEXT::IsBold(), EDA_TEXT::IsItalic(), m_requiredVersion, parseDouble(), parseInt(), parseInternalUnits(), EDA_TEXT::SetBold(), EDA_TEXT::SetFont(), EDA_TEXT::SetHorizJustify(), EDA_TEXT::SetHyperlink(), EDA_TEXT::SetItalic(), EDA_TEXT::SetLineSpacing(), EDA_TEXT::SetText(), EDA_TEXT::SetTextColor(), EDA_TEXT::SetTextSize(), EDA_TEXT::SetTextThickness(), EDA_TEXT::SetVertJustify(), EDA_TEXT::SetVisible(), THROW_PARSE_ERROR, and EDA_TEXT::ValidateHyperlink().
Referenced by parsePin(), parseProperty(), parseSchField(), parseSchSheetPin(), parseSchText(), parseSchTextBox(), parseText(), and parseTextBox().
|
private |
Definition at line 485 of file sch_sexpr_parser.cpp.
References Clamp(), color, FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, NO_FILL, parseDouble(), and parseInt().
Referenced by parseArc(), parseBezier(), parseCircle(), parsePolyLine(), parseRectangle(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchPolyLine(), parseSchRectangle(), parseSchTextBox(), parseSheet(), and parseTextBox().
|
private |
Definition at line 677 of file sch_sexpr_parser.cpp.
References m_requiredVersion, and parseInt().
Referenced by ParseLib(), and ParseSchematic().
|
inlineprivate |
Definition at line 120 of file sch_sexpr_parser.h.
|
private |
Definition at line 2909 of file sch_sexpr_parser.cpp.
References image, parseDouble(), parseKIID(), and parseXY().
Referenced by ParseSchematic().
|
inlineprivate |
Definition at line 126 of file sch_sexpr_parser.h.
Referenced by parseEDA_TEXT(), parseFill(), parseHeader(), parseInt(), parseJunction(), parsePin(), parseProperty(), parseSchematicSymbol(), parseSchField(), parseSchSymbolInstances(), and parseTITLE_BLOCK().
|
inlineprivate |
Definition at line 131 of file sch_sexpr_parser.h.
References parseInt().
|
private |
Definition at line 452 of file sch_sexpr_parser.cpp.
References EDA_IU_SCALE::IU_PER_MM, KiROUND(), parseDouble(), and schIUScale.
Referenced by parseArc(), parseBusEntry(), parseCircle(), parseEDA_TEXT(), parseInternalUnits(), parseJunction(), parsePin(), parsePinNames(), parseSchCircle(), parseSchText(), parseSheet(), and parseXY().
|
private |
Definition at line 465 of file sch_sexpr_parser.cpp.
References EDA_IU_SCALE::IU_PER_MM, KiROUND(), parseDouble(), and schIUScale.
|
inlineprivate |
Definition at line 141 of file sch_sexpr_parser.h.
References DSN::GetTokenText(), and parseInternalUnits().
|
private |
Definition at line 3174 of file sch_sexpr_parser.cpp.
References Clamp(), color, parseDouble(), parseInt(), parseInternalUnits(), parseKIID(), and parseXY().
Referenced by ParseSchematic().
|
private |
Definition at line 107 of file sch_sexpr_parser.cpp.
References m_uuids.
Referenced by parseBusEntry(), parseImage(), parseJunction(), parseLine(), parseNoConnect(), ParseSchematic(), parseSchematicSymbol(), parseSchPolyLine(), parseSchSheetPin(), parseSchText(), and parseSheet().
void SCH_SEXPR_PARSER::ParseLib | ( | LIB_SYMBOL_MAP & | aSymbolLibMap | ) |
Definition at line 135 of file sch_sexpr_parser.cpp.
References LIB_SYMBOL::GetName(), m_convert, m_requiredVersion, m_unit, parseHeader(), ParseSymbol(), and SEXPR_SYMBOL_LIB_FILE_VERSION.
Referenced by SCH_SEXPR_PLUGIN_CACHE::Load().
|
private |
Definition at line 3382 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_BUS, LAYER_NOTES, LAYER_WIRE, EDA_IU_SCALE::MilsToIU(), parseKIID(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 3230 of file sch_sexpr_parser.cpp.
References parseKIID(), and parseXY().
Referenced by ParseSchematic().
|
private |
Definition at line 1761 of file sch_sexpr_parser.cpp.
References _, PAGE_INFO::Custom, m_requiredVersion, MAX_PAGE_SIZE_EESCHEMA_MILS, MIN_PAGE_SIZE_MILS, EDA_UNIT_UTILS::Mm2mils(), parseDouble(), PAGE_INFO::SetHeightMils(), PAGE_INFO::SetPortrait(), PAGE_INFO::SetType(), PAGE_INFO::SetWidthMils(), and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
|
private |
Definition at line 1272 of file sch_sexpr_parser.cpp.
References _, CLOCK, CLOCK_LOW, ConvertToNewOverbarNotation(), DEFAULT_SIZE_TEXT, FALLING_EDGE_CLOCK, INPUT_LOW, INVERTED, INVERTED_CLOCK, LINE, m_convert, LIB_PIN::ALT::m_Name, m_requiredVersion, LIB_PIN::ALT::m_Shape, LIB_PIN::ALT::m_Type, m_unit, EDA_IU_SCALE::MilsToIU(), NONLOGIC, OUTPUT_LOW, parseEDA_TEXT(), parseInt(), parseInternalUnits(), parseShape(), 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, text, and THROW_PARSE_ERROR.
Referenced by ParseDrawItem().
|
private |
Definition at line 717 of file sch_sexpr_parser.cpp.
References _, parseInternalUnits(), and THROW_PARSE_ERROR.
Referenced by ParseSymbol().
|
private |
Definition at line 1482 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, m_convert, FILL_PARAMS::m_FillType, m_unit, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), POLY, and schIUScale.
Referenced by ParseDrawItem().
|
private |
Definition at line 749 of file sch_sexpr_parser.cpp.
References _, DEGREES_T, LIB_FIELD::GetCanonicalName(), TEMPLATE_FIELDNAME::GetDefaultFieldName(), m_fieldIDsRead, MANDATORY_FIELDS, name, parseDouble(), parseEDA_TEXT(), parseInt(), parseXY(), THROW_PARSE_ERROR, UnescapeString(), and VALUE_FIELD.
Referenced by ParseSymbol().
|
private |
Definition at line 1550 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, m_convert, FILL_PARAMS::m_FillType, m_unit, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), RECT, and schIUScale.
Referenced by ParseDrawItem().
|
private |
Definition at line 3451 of file sch_sexpr_parser.cpp.
References ARC, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 3631 of file sch_sexpr_parser.cpp.
References BEZIER, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 3516 of file sch_sexpr_parser.cpp.
References CIRCLE, DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseFill(), parseInternalUnits(), parseStroke(), parseXY(), schIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by ParseSchematic().
void SCH_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 2283 of file sch_sexpr_parser.cpp.
References SCH_SCREEN::AddLibSymbol(), SCH_SCREEN::Append(), checkpoint(), SHAPE_LINE_CHAIN::CPoint(), EDA_SHAPE::GetPointCount(), EDA_SHAPE::GetPolyShape(), SCH_SHEET::GetScreen(), SCH_SHAPE::GetStroke(), SCH_SCREEN::GetUuid(), KI_FALLTHROUGH, LAYER_NOTES, m_requiredVersion, m_rootSheet, m_rootUuid, SCH_SCREEN::m_uuid, EDA_ITEM::m_Uuid, SHAPE_POLY_SET::Outline(), parseBusAlias(), parseBusEntry(), parseHeader(), parseImage(), parseJunction(), parseKIID(), parseLine(), parseNoConnect(), parsePAGE_INFO(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchematicSymbol(), parseSchPolyLine(), parseSchRectangle(), parseSchSheetInstances(), parseSchSymbolInstances(), parseSchText(), parseSchTextBox(), parseSheet(), ParseSymbol(), parseTITLE_BLOCK(), SCH_LINE::SetEndPoint(), SCH_SCREEN::SetFileFormatVersionAtLoad(), SCH_SCREEN::SetLegacySymbolInstanceData(), SCH_SCREEN::SetPageSettings(), EDA_ITEM::SetParent(), SCH_LINE::SetStartPoint(), SCH_LINE::SetStroke(), SCH_SCREEN::SetTitleBlock(), SEXPR_SCHEMATIC_FILE_VERSION, LIB_SYMBOL::UpdateFieldOrdinals(), and SCH_SCREEN::UpdateLocalLibSymbolLinks().
Referenced by SCH_SEXPR_PLUGIN::LoadContent(), SCH_SEXPR_PLUGIN::loadFile(), and KI_TEST::LoadSheetSchematicContents().
|
private |
Definition at line 2556 of file sch_sexpr_parser.cpp.
References _, Format(), SCH_FIELD::GetId(), m_fieldId, m_fieldIDsRead, SCH_SYMBOL_INSTANCE::m_Path, SCH_SYMBOL_INSTANCE::m_ProjectName, SCH_SYMBOL_INSTANCE::m_Reference, m_requiredVersion, SCH_SYMBOL_INSTANCE::m_Unit, MANDATORY_FIELDS, name, LIB_ID::Parse(), parseBool(), parseDouble(), parseInt(), parseKIID(), parseSchField(), parseXY(), REFERENCE_FIELD, SCH_FIELD::SetId(), SYM_MIRROR_X, SYM_MIRROR_Y, and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
Definition at line 1917 of file sch_sexpr_parser.cpp.
References _, DEGREES_T, SCH_SHEET::GetDefaultFieldName(), TEMPLATE_FIELDNAME::GetDefaultFieldName(), MANDATORY_FIELDS, name, parseDouble(), parseEDA_TEXT(), parseInt(), parseXY(), SCH_SHEET_T, SCH_SYMBOL_T, SHEET_MANDATORY_FIELDS, THROW_PARSE_ERROR, EDA_ITEM::Type(), and VALUE_FIELD.
Referenced by parseSchematicSymbol(), parseSchText(), and parseSheet().
|
private |
Definition at line 3321 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, LAYER_NOTES, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseFill(), parseKIID(), parseStroke(), parseXY(), POLY, and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 3576 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseFill(), parseStroke(), parseXY(), RECT, and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 2109 of file sch_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(), and SCH_SHEET_PATH::SetPageNumber().
Referenced by ParseSchematic().
|
private |
Definition at line 2023 of file sch_sexpr_parser.cpp.
References _, PNS::angle(), BOTTOM, L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, L_UNSPECIFIED, LEFT, name, parseDouble(), parseEDA_TEXT(), parseKIID(), parseXY(), RIGHT, THROW_PARSE_ERROR, and TOP.
Referenced by parseSheet().
|
private |
Definition at line 2206 of file sch_sexpr_parser.cpp.
References m_appending, SCH_SYMBOL_INSTANCE::m_Footprint, SCH_SYMBOL_INSTANCE::m_Path, SCH_SYMBOL_INSTANCE::m_Reference, m_rootUuid, SCH_SCREEN::m_symbolInstances, SCH_SYMBOL_INSTANCE::m_Unit, SCH_SYMBOL_INSTANCE::m_Value, NilUuid(), and parseInt().
Referenced by ParseSchematic().
|
private |
Definition at line 3694 of file sch_sexpr_parser.cpp.
References TEXT_SPIN_STYLE::BOTTOM, F_DIAMOND, F_DOT, F_RECTANGLE, F_ROUND, SCH_LABEL_BASE::GetFields(), SCH_FIELD::GetInternalName(), GR_TEXT_H_ALIGN_RIGHT, L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, L_UNSPECIFIED, TEXT_SPIN_STYLE::LEFT, parseDouble(), parseEDA_TEXT(), parseInternalUnits(), parseKIID(), parseSchField(), parseXY(), TEXT_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(), text, and TEXT_SPIN_STYLE::UP.
Referenced by ParseSchematic().
|
private |
Definition at line 3873 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseDouble(), parseEDA_TEXT(), parseFill(), parseStroke(), parseXY(), and schIUScale.
Referenced by ParseSchematic().
|
private |
Definition at line 2983 of file sch_sexpr_parser.cpp.
References DEFAULT, DEFAULT_LINE_WIDTH_MILS, STROKE_PARAMS::GetColor(), SCH_FIELD::GetId(), STROKE_PARAMS::GetWidth(), FILL_PARAMS::m_Color, SCH_SHEET_INSTANCE::m_PageNumber, SCH_SHEET_INSTANCE::m_Path, SCH_SHEET_INSTANCE::m_ProjectName, m_requiredVersion, EDA_IU_SCALE::MilsToIU(), parseFill(), parseInternalUnits(), parseKIID(), parseSchField(), parseSchSheetPin(), parseStroke(), parseXY(), schIUScale, SCH_FIELD::SetId(), SHEET_MANDATORY_FIELDS, SHEETFILENAME, and SHEETNAME.
Referenced by ParseSchematic().
|
private |
Parse stroke definition aStroke.
aStrokeDef | A reference to the STROKE_PARAMS structure to write to. |
Definition at line 475 of file sch_sexpr_parser.cpp.
References EDA_IU_SCALE::IU_PER_MM, STROKE_PARAMS_PARSER::ParseStroke(), and schIUScale.
Referenced by parseArc(), parseBezier(), parseBusEntry(), parseCircle(), parseLine(), parsePolyLine(), parseRectangle(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchPolyLine(), parseSchRectangle(), parseSchTextBox(), parseSheet(), and parseTextBox().
LIB_SYMBOL * SCH_SEXPR_PARSER::ParseSymbol | ( | LIB_SYMBOL_MAP & | aSymbolLibMap, |
int | aFileVersion = SEXPR_SYMBOL_LIB_FILE_VERSION |
||
) |
Definition at line 165 of file sch_sexpr_parser.cpp.
References _, Format(), m_convert, m_fieldId, m_fieldIDsRead, m_requiredVersion, m_symbolName, m_unit, MANDATORY_FIELDS, name, LIB_ID::Parse(), parseBool(), ParseDrawItem(), parsePinNames(), parseProperty(), EDA_ITEM::SetParent(), and THROW_PARSE_ERROR.
Referenced by ParseLib(), SCH_SEXPR_PLUGIN::ParseLibSymbol(), and ParseSchematic().
|
private |
Definition at line 1610 of file sch_sexpr_parser.cpp.
References _, m_convert, m_unit, parseDouble(), parseEDA_TEXT(), parseXY(), TENTHS_OF_A_DEGREE_T, text, and THROW_PARSE_ERROR.
Referenced by ParseDrawItem().
|
private |
Definition at line 1665 of file sch_sexpr_parser.cpp.
References _, DEFAULT, DEFAULT_LINE_WIDTH_MILS, DEGREES_T, FILL_PARAMS::m_Color, FILL_PARAMS::m_FillType, EDA_IU_SCALE::MilsToIU(), parseDouble(), parseEDA_TEXT(), parseFill(), parseStroke(), parseXY(), schIUScale, and THROW_PARSE_ERROR.
Referenced by ParseDrawItem().
|
private |
Definition at line 1813 of file sch_sexpr_parser.cpp.
References _, parseInt(), TITLE_BLOCK::SetComment(), TITLE_BLOCK::SetCompany(), TITLE_BLOCK::SetDate(), TITLE_BLOCK::SetRevision(), TITLE_BLOCK::SetTitle(), and THROW_PARSE_ERROR.
Referenced by ParseSchematic().
|
inlineprivate |
Definition at line 146 of file sch_sexpr_parser.h.
References parseInternalUnits().
Referenced by parseArc(), parseBezier(), parseBusEntry(), parseCircle(), parseImage(), parseJunction(), parseLine(), parseNoConnect(), parsePin(), parsePolyLine(), parseProperty(), parseRectangle(), parseSchArc(), parseSchBezier(), parseSchCircle(), parseSchematicSymbol(), parseSchField(), parseSchPolyLine(), parseSchRectangle(), parseSchSheetPin(), parseSchText(), parseSchTextBox(), parseSheet(), parseText(), and parseTextBox().
|
private |
Appending load status.
Definition at line 209 of file sch_sexpr_parser.h.
Referenced by parseSchSheetInstances(), and parseSchSymbolInstances().
|
private |
The current body style being parsed.
Definition at line 207 of file sch_sexpr_parser.h.
Referenced by parseArc(), parseBezier(), parseCircle(), ParseLib(), parsePin(), parsePolyLine(), parseRectangle(), ParseSymbol(), and parseText().
|
private |
The current field ID.
Definition at line 205 of file sch_sexpr_parser.h.
Referenced by parseSchematicSymbol(), and ParseSymbol().
|
private |
Field IDs that have been read so far for the current symbol.
Definition at line 212 of file sch_sexpr_parser.h.
Referenced by parseProperty(), parseSchematicSymbol(), and ParseSymbol().
|
private |
Definition at line 218 of file sch_sexpr_parser.h.
Referenced by checkpoint().
|
private |
Definition at line 219 of file sch_sexpr_parser.h.
Referenced by checkpoint().
|
private |
Definition at line 217 of file sch_sexpr_parser.h.
Referenced by checkpoint().
|
private |
Definition at line 216 of file sch_sexpr_parser.h.
Referenced by checkpoint().
|
private |
Set to the symbol library file version required.
Definition at line 204 of file sch_sexpr_parser.h.
Referenced by GetParsedRequiredVersion(), parseBusAlias(), parseEDA_TEXT(), parseHeader(), ParseLib(), parsePAGE_INFO(), parsePin(), ParseSchematic(), parseSchematicSymbol(), parseSheet(), and ParseSymbol().
|
private |
The rootsheet for full project loads or null for importing a schematic.
Definition at line 224 of file sch_sexpr_parser.h.
Referenced by ParseSchematic().
|
private |
Definition at line 221 of file sch_sexpr_parser.h.
Referenced by ParseSchematic(), parseSchSheetInstances(), and parseSchSymbolInstances().
|
private |
The current symbol name.
Definition at line 208 of file sch_sexpr_parser.h.
Referenced by ParseSymbol().
|
private |
The current unit being parsed.
Definition at line 206 of file sch_sexpr_parser.h.
Referenced by parseArc(), parseBezier(), parseCircle(), ParseLib(), parsePin(), parsePolyLine(), parseRectangle(), ParseSymbol(), and parseText().
|
private |
Definition at line 214 of file sch_sexpr_parser.h.
Referenced by parseKIID().