|
KiCad PCB EDA Suite
|
#include <sch_io/kicad_sexpr/writers/sch_writer_v10.h>#include <algorithm>#include <fmt/format.h>#include <wx/mstream.h>#include <base_units.h>#include <bitmap_base.h>#include <build_version.h>#include <schematic_lexer.h>#include <io/kicad/kicad_io_utils.h>#include <io/kicad/legacy_format.h>#include <schematic.h>#include <sch_bitmap.h>#include <sch_bus_entry.h>#include <sch_edit_frame.h>#include <sch_group.h>#include <sch_junction.h>#include <sch_line.h>#include <sch_no_connect.h>#include <sch_pin.h>#include <sch_rule_area.h>#include <sch_screen.h>#include <sch_shape.h>#include <sch_sheet.h>#include <sch_sheet_pin.h>#include <sch_symbol.h>#include <sch_table.h>#include <sch_tablecell.h>#include <sch_text.h>#include <sch_textbox.h>#include <string_utils.h>#include <locale_io.h>#include <richio.h>Go to the source code of this file.
Functions | |
| static void | formatArc (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aArc, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatCircle (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aCircle, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatRect (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aRect, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatBezier (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aBezier, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatPoly (OUTPUTFORMATTER *aFormatter, EDA_SHAPE *aPolyLine, bool aIsPrivate, const STROKE_PARAMS &aStroke, FILL_T aFillMode, const COLOR4D &aFillColor, bool aInvertY, const KIID &aUuid=niluuid) |
| static void | formatFill (OUTPUTFORMATTER *aFormatter, FILL_T aFillMode, const COLOR4D &aFillColor) |
| static const char * | getPinElectricalTypeToken (ELECTRICAL_PINTYPE aType) |
| static const char * | getPinShapeToken (GRAPHIC_PINSHAPE aShape) |
| static EDA_ANGLE | getPinAngle (PIN_ORIENTATION aOrientation) |
| static const char * | getSheetPinShapeToken (LABEL_FLAG_SHAPE aShape) |
| static EDA_ANGLE | getSheetPinAngle (SHEET_SIDE aSide) |
| static const char * | getTextTypeToken (KICAD_T aType) |
| static std::string | formatIU (const int &aValue) |
| static std::string | formatIU (const VECTOR2I &aPt, bool aInvertY) |
| static void | libSaveSymbol (LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter, const wxString &aLibName=wxEmptyString, bool aIncludeData=true) |
| static void | libSaveSymbolDrawItem (SCH_ITEM *aItem, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveField (SCH_FIELD *aField, OUTPUTFORMATTER &aFormatter) |
| static void | libSavePin (SCH_PIN *aPin, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveText (SCH_TEXT *aText, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveTextBox (SCH_TEXTBOX *aTextBox, OUTPUTFORMATTER &aFormatter) |
| static void | libSaveDcmInfoAsFields (LIB_SYMBOL *aSymbol, OUTPUTFORMATTER &aFormatter) |
Variables | |
| static const char * | emptyString = "" |
|
static |
Definition at line 243 of file sch_writer_v10.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetArcMid(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and schIUScale.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 294 of file sch_writer_v10.cpp.
References KIID::AsString(), formatFill(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetBezierC1(), EDA_SHAPE::GetBezierC2(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and schIUScale.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 260 of file sch_writer_v10.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetRadius(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and schIUScale.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 77 of file sch_writer_v10.cpp.
References KIGFX::COLOR4D::a, KIGFX::COLOR4D::b, CROSS_HATCH, FILLED_SHAPE, FILLED_WITH_BG_BODYCOLOR, FILLED_WITH_COLOR, FormatDouble2Str(), KIGFX::COLOR4D::g, HATCH, KiROUND(), NO_FILL, OUTPUTFORMATTER::Print(), KIGFX::COLOR4D::r, and REVERSE_HATCH.
Referenced by formatArc(), formatBezier(), formatCircle(), formatPoly(), formatRect(), and libSaveTextBox().
|
static |
Definition at line 230 of file sch_writer_v10.cpp.
References EDA_UNIT_UTILS::FormatInternalUnits(), and schIUScale.
Referenced by formatArc(), formatBezier(), formatCircle(), formatPoly(), and formatRect().
|
static |
Definition at line 236 of file sch_writer_v10.cpp.
References EDA_UNIT_UTILS::FormatInternalUnits(), schIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.
|
static |
Definition at line 318 of file sch_writer_v10.cpp.
References KIID::AsString(), SHAPE_LINE_CHAIN::CPoint(), SHAPE_LINE_CHAIN::CPoints(), formatFill(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetPolyShape(), SHAPE_LINE_CHAIN::IsClosed(), niluuid, SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and schIUScale.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 277 of file sch_writer_v10.cpp.
References KIID::AsString(), formatFill(), formatIU(), formatIU(), KICAD_FORMAT::LEGACY::FormatStroke(), EDA_SHAPE::GetCornerRadius(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), niluuid, OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), and schIUScale.
Referenced by libSaveSymbolDrawItem().
|
static |
|
static |
Definition at line 107 of file sch_writer_v10.cpp.
References emptyString, PT_BIDI, PT_INPUT, PT_NC, PT_NIC, PT_OPENCOLLECTOR, PT_OPENEMITTER, PT_OUTPUT, PT_PASSIVE, PT_POWER_IN, PT_POWER_OUT, PT_TRISTATE, and PT_UNSPECIFIED.
Referenced by libSavePin().
|
static |
Definition at line 142 of file sch_writer_v10.cpp.
References CLOCK, CLOCK_LOW, emptyString, FALLING_EDGE_CLOCK, INPUT_LOW, INVERTED, INVERTED_CLOCK, LINE, NONLOGIC, and OUTPUT_LOW.
|
static |
|
static |
Definition at line 184 of file sch_writer_v10.cpp.
References F_DIAMOND, F_DOT, F_RECTANGLE, F_ROUND, L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, and L_UNSPECIFIED.
|
static |
Definition at line 216 of file sch_writer_v10.cpp.
References SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, and SCH_TEXT_T.
|
static |
Definition at line 556 of file sch_writer_v10.cpp.
References CTX_NO_SPACE, EscapeString(), filter, LIB_SYMBOL::GetFPFilters(), LIB_SYMBOL::GetRawKeyWords(), libSaveField(), SCH_FIELD::SetText(), EDA_TEXT::SetVisible(), and USER.
Referenced by libSaveSymbol().
|
static |
Definition at line 636 of file sch_writer_v10.cpp.
References EDA_ANGLE::AsDegrees(), SCH_FIELD::CanAutoplace(), KICAD_FORMAT::LEGACY::FormatBool(), EDA_UNIT_UTILS::FormatInternalUnits(), KICAD_FORMAT::LEGACY::FormatTextV10(), SCH_FIELD::GetName(), SCH_FIELD::GetPosition(), SCH_FIELD::GetText(), EDA_TEXT::GetTextAngle(), SCH_FIELD::GetUntranslatedName(), SCH_FIELD::IsMandatory(), SCH_FIELD::IsNameShown(), SCH_ITEM::IsPrivate(), EDA_TEXT::IsVisible(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_FIELD_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveDcmInfoAsFields(), and libSaveSymbol().
|
static |
Definition at line 663 of file sch_writer_v10.cpp.
References EDA_ITEM::ClearFlags(), EDA_UNIT_UTILS::FormatAngle(), KICAD_FORMAT::LEGACY::FormatBool(), EDA_UNIT_UTILS::FormatInternalUnits(), SCH_PIN::GetAlternates(), SCH_PIN::GetLength(), SCH_PIN::GetName(), SCH_PIN::GetNameTextSize(), SCH_PIN::GetNumber(), SCH_PIN::GetNumberTextSize(), SCH_PIN::GetOrientation(), getPinAngle(), getPinElectricalTypeToken(), getPinElectricalTypeToken(), getPinShapeToken(), SCH_PIN::GetPosition(), SCH_PIN::GetShape(), SCH_PIN::GetType(), IS_CHANGED, SCH_PIN::IsVisible(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_PIN_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 365 of file sch_writer_v10.cpp.
References EMBEDDED_FILES::ClearEmbeddedFonts(), DEFAULT_PIN_NAME_OFFSET, EMBEDDED_FILES::EmbeddedFileMap(), LIB_SYMBOL::EmbedFonts(), KICAD_FORMAT::LEGACY::FormatBool(), KICAD_FORMAT::LEGACY::FormatEmbeddedFilesV10(), EDA_UNIT_UTILS::FormatInternalUnits(), JUMPER_GROUP_SET::GetAll(), EMBEDDED_FILES::GetAreFontsEmbedded(), LIB_SYMBOL::GetBodyStyleNames(), LIB_SYMBOL::GetDuplicatePinNumbersAreJumpers(), LIB_SYMBOL::GetEmbeddedFiles(), SYMBOL::GetExcludedFromBoard(), SYMBOL::GetExcludedFromBOM(), SYMBOL::GetExcludedFromPosFiles(), SYMBOL::GetExcludedFromSim(), LIB_SYMBOL::GetFields(), LIB_SYMBOL::GetLibId(), LIB_ID::GetLibItemName(), LIB_SYMBOL::GetParent(), SYMBOL::GetPinNameOffset(), SYMBOL::GetShowPinNames(), SYMBOL::GetShowPinNumbers(), LIB_SYMBOL::GetUnitDisplayNames(), LIB_SYMBOL::GetUnitDrawItems(), group, LIB_SYMBOL::HasDeMorganBodyStyles(), JUMPER_GROUP_SET::IsEmpty(), LIB_SYMBOL::IsGlobalPower(), LIB_SYMBOL::IsLocalPower(), LIB_SYMBOL::IsMultiBodyStyle(), LIB_SYMBOL::IsRoot(), LIB_SYMBOL::JumperPinGroups(), libSaveDcmInfoAsFields(), libSaveField(), libSaveSymbolDrawItem(), locked, name, LIB_ID::Parse(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotes(), OUTPUTFORMATTER::Quotew(), schIUScale, LIB_SYMBOL::UnitsLocked(), USER, and UTF8::wx_str().
Referenced by SCH_WRITER_V10::Format(), SCH_WRITER_V9::Format(), SCH_WRITER_V10::SaveSymbolLibrary(), and SCH_WRITER_V9::SaveSymbolLibrary().
|
static |
Definition at line 593 of file sch_writer_v10.cpp.
References ARC, BEZIER, CIRCLE, formatArc(), formatBezier(), formatCircle(), formatPoly(), formatRect(), SCH_ITEM::GetClass(), EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), EDA_SHAPE::GetShape(), SCH_SHAPE::GetStroke(), SCH_ITEM::IsPrivate(), libSavePin(), libSaveText(), libSaveTextBox(), POLY, RECTANGLE, SCH_PIN_T, SCH_SHAPE_T, SCH_TEXT_T, SCH_TEXTBOX_T, EDA_SHAPE::SHAPE_T_asString(), EDA_ITEM::Type(), and UNIMPLEMENTED_FOR.
Referenced by libSaveSymbol().
|
static |
Definition at line 705 of file sch_writer_v10.cpp.
References EDA_ANGLE::AsTenthsOfADegree(), EDA_UNIT_UTILS::FormatInternalUnits(), KICAD_FORMAT::LEGACY::FormatTextV10(), SCH_TEXT::GetPosition(), EDA_TEXT::GetText(), EDA_TEXT::GetTextAngle(), SCH_ITEM::IsPrivate(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_TEXT_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 720 of file sch_writer_v10.cpp.
References EDA_UNIT_UTILS::FormatAngle(), formatFill(), EDA_UNIT_UTILS::FormatInternalUnits(), KICAD_FORMAT::LEGACY::FormatStroke(), KICAD_FORMAT::LEGACY::FormatTextV10(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetFillColor(), EDA_SHAPE::GetFillMode(), SCH_TEXTBOX::GetMarginBottom(), SCH_TEXTBOX::GetMarginLeft(), SCH_TEXTBOX::GetMarginRight(), SCH_TEXTBOX::GetMarginTop(), EDA_SHAPE::GetStart(), SCH_SHAPE::GetStroke(), EDA_TEXT::GetText(), EDA_TEXT::GetTextAngle(), SCH_ITEM::IsPrivate(), OUTPUTFORMATTER::Print(), OUTPUTFORMATTER::Quotew(), SCH_TEXTBOX_T, schIUScale, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by libSaveSymbolDrawItem().
|
static |
Definition at line 61 of file sch_writer_v10.cpp.