|
KiCad PCB EDA Suite
|
Lightweight mutable tree node for the intermediate Eagle binary tree. More...
Public Member Functions | |
| EGB_NODE * | AddChild (int aId, const wxString &aName) |
| EGB_NODE * | AdoptChild (std::unique_ptr< EGB_NODE > aChild) |
| Move an existing node in as a child, repointing its parent link. | |
| bool | HasProp (const wxString &aKey) const |
| wxString | Prop (const wxString &aKey) const |
| long | PropLong (const wxString &aKey) const |
| wxString | PropDoubled (const wxString &aKey) const |
| Format a property doubled in 64-bit so the half-to-full widening cannot overflow a 32-bit long. | |
| EGB_NODE * | FindChildById (int aId) const |
| EGB_NODE * | FindChildByName (const wxString &aName) const |
| template<typename FN> | |
| void | ForEach (FN &&aFn) |
| Apply aFn to this node and every descendant, pre-order. | |
Public Attributes | |
| int | id = 0 |
| wxString | name |
| wxString | content |
| PCDATA emitted as the XML node's text body. | |
| std::map< wxString, wxString > | props |
| std::vector< std::unique_ptr< EGB_NODE > > | children |
| EGB_NODE * | parent = nullptr |
Lightweight mutable tree node for the intermediate Eagle binary tree.
Definition at line 81 of file eagle_bin_parser.h.
| EAGLE_BIN_PARSER::EGB_NODE * EAGLE_BIN_PARSER::EGB_NODE::AddChild | ( | int | aId, |
| const wxString & | aName ) |
Definition at line 798 of file eagle_bin_parser.cpp.
References children.
Referenced by EAGLE_BIN_PARSER::postprocDrc(), EAGLE_BIN_PARSER::postProcess(), EAGLE_BIN_PARSER::readBlock(), EAGLE_BIN_PARSER::resegmentSchSheets(), and EAGLE_BIN_PARSER::resolveSchLibraries().
| EAGLE_BIN_PARSER::EGB_NODE * EAGLE_BIN_PARSER::EGB_NODE::AdoptChild | ( | std::unique_ptr< EGB_NODE > | aChild | ) |
Move an existing node in as a child, repointing its parent link.
Definition at line 810 of file eagle_bin_parser.cpp.
References children.
Referenced by EAGLE_BIN_PARSER::resegmentSchSheets(), and EAGLE_BIN_PARSER::resolveSchLibraries().
| EAGLE_BIN_PARSER::EGB_NODE * EAGLE_BIN_PARSER::EGB_NODE::FindChildById | ( | int | aId | ) | const |
Definition at line 844 of file eagle_bin_parser.cpp.
References children.
Referenced by EAGLE_BIN_PARSER::Parse(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postProcess(), EAGLE_BIN_PARSER::postProcessSchematic(), EAGLE_BIN_PARSER::postprocLibs(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::resegmentSchSheets(), and EAGLE_BIN_PARSER::resolveSchLibraries().
| EAGLE_BIN_PARSER::EGB_NODE * EAGLE_BIN_PARSER::EGB_NODE::FindChildByName | ( | const wxString & | aName | ) | const |
Definition at line 856 of file eagle_bin_parser.cpp.
References children.
Referenced by EAGLE_BIN_PARSER::postProcess(), EAGLE_BIN_PARSER::resegmentSchSheets(), and EAGLE_BIN_PARSER::resolveSchLibraries().
|
inline |
Apply aFn to this node and every descendant, pre-order.
Definition at line 107 of file eagle_bin_parser.h.
References children.
Referenced by EAGLE_BIN_PARSER::postprocRequiredAttrs(), EAGLE_BIN_PARSER::postprocSchAttrs(), and EAGLE_BIN_PARSER::renameSchSections().
|
inline |
Definition at line 95 of file eagle_bin_parser.h.
References props.
Referenced by EAGLE_BIN_PARSER::arcDecode(), EAGLE_BIN_PARSER::Parse(), EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocCircles(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postprocDimensions(), EAGLE_BIN_PARSER::postprocRequiredAttrs(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocSmd(), EAGLE_BIN_PARSER::postprocTextContent(), and EAGLE_BIN_PARSER::postprocWires().
| wxString EAGLE_BIN_PARSER::EGB_NODE::Prop | ( | const wxString & | aKey | ) | const |
Definition at line 819 of file eagle_bin_parser.cpp.
References props.
Referenced by EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::postprocRequiredAttrs(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocTextContent(), EAGLE_BIN_PARSER::postprocWires(), PropDoubled(), PropLong(), EAGLE_BIN_PARSER::resegmentSchSheets(), and EAGLE_BIN_PARSER::resolveSchLibraries().
| wxString EAGLE_BIN_PARSER::EGB_NODE::PropDoubled | ( | const wxString & | aKey | ) | const |
Format a property doubled in 64-bit so the half-to-full widening cannot overflow a 32-bit long.
Definition at line 835 of file eagle_bin_parser.cpp.
References Prop().
Referenced by EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocCircles(), EAGLE_BIN_PARSER::postprocDimensions(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocSmd(), and EAGLE_BIN_PARSER::postprocWires().
| long EAGLE_BIN_PARSER::EGB_NODE::PropLong | ( | const wxString & | aKey | ) | const |
Definition at line 826 of file eagle_bin_parser.cpp.
References Prop().
Referenced by EAGLE_BIN_PARSER::arcDecode(), EAGLE_BIN_PARSER::Parse(), EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocWires(), and EAGLE_BIN_PARSER::resegmentSchSheets().
| std::vector<std::unique_ptr<EGB_NODE> > EAGLE_BIN_PARSER::EGB_NODE::children |
Definition at line 87 of file eagle_bin_parser.h.
Referenced by AddChild(), AdoptChild(), EAGLE_BIN_PARSER::childrenById(), FindChildById(), FindChildByName(), ForEach(), EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocAttributes(), EAGLE_BIN_PARSER::postprocCircles(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postprocDimensions(), EAGLE_BIN_PARSER::postprocElements(), EAGLE_BIN_PARSER::postProcess(), EAGLE_BIN_PARSER::postProcessSchematic(), EAGLE_BIN_PARSER::postprocFreeText(), EAGLE_BIN_PARSER::postprocLayers(), EAGLE_BIN_PARSER::postprocLibs(), EAGLE_BIN_PARSER::postprocLongText(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSignals(), EAGLE_BIN_PARSER::postprocSmd(), EAGLE_BIN_PARSER::postprocTextContent(), EAGLE_BIN_PARSER::postprocUnits(), EAGLE_BIN_PARSER::postprocVias(), EAGLE_BIN_PARSER::postprocWires(), EAGLE_BIN_PARSER::resegmentSchSheets(), EAGLE_BIN_PARSER::resolveSchLibraries(), and EAGLE_BIN_PARSER::toXml().
| wxString EAGLE_BIN_PARSER::EGB_NODE::content |
PCDATA emitted as the XML node's text body.
Definition at line 85 of file eagle_bin_parser.h.
Referenced by EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocTextContent(), and EAGLE_BIN_PARSER::toXml().
| int EAGLE_BIN_PARSER::EGB_NODE::id = 0 |
Definition at line 83 of file eagle_bin_parser.h.
Referenced by EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocCircles(), EAGLE_BIN_PARSER::postprocDimensions(), EAGLE_BIN_PARSER::postprocFreeText(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::postprocRequiredAttrs(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocSignals(), EAGLE_BIN_PARSER::postprocSmd(), EAGLE_BIN_PARSER::postprocTextContent(), EAGLE_BIN_PARSER::postprocVias(), EAGLE_BIN_PARSER::postprocWires(), EAGLE_BIN_PARSER::renameSchSections(), and EAGLE_BIN_PARSER::resolveSchLibraries().
| wxString EAGLE_BIN_PARSER::EGB_NODE::name |
Definition at line 84 of file eagle_bin_parser.h.
Referenced by EAGLE_BIN_PARSER::renameSchSections(), and EAGLE_BIN_PARSER::toXml().
| EGB_NODE* EAGLE_BIN_PARSER::EGB_NODE::parent = nullptr |
Definition at line 88 of file eagle_bin_parser.h.
Referenced by EAGLE_BIN_PARSER::postprocLibs().
| std::map<wxString, wxString> EAGLE_BIN_PARSER::EGB_NODE::props |
Definition at line 86 of file eagle_bin_parser.h.
Referenced by EAGLE_BIN_PARSER::arcDecode(), EAGLE_BIN_PARSER::fixLongText(), HasProp(), EAGLE_BIN_PARSER::postprocArcs(), EAGLE_BIN_PARSER::postprocCircles(), EAGLE_BIN_PARSER::postprocContactRefs(), EAGLE_BIN_PARSER::postprocDimensions(), EAGLE_BIN_PARSER::postprocDrc(), EAGLE_BIN_PARSER::postprocLongText(), EAGLE_BIN_PARSER::postprocNames(), EAGLE_BIN_PARSER::postprocRequiredAttrs(), EAGLE_BIN_PARSER::postprocRotation(), EAGLE_BIN_PARSER::postprocSchAttrs(), EAGLE_BIN_PARSER::postprocSmd(), EAGLE_BIN_PARSER::postprocUnits(), EAGLE_BIN_PARSER::postprocVias(), EAGLE_BIN_PARSER::postprocWires(), Prop(), EAGLE_BIN_PARSER::readBlock(), EAGLE_BIN_PARSER::resegmentSchSheets(), EAGLE_BIN_PARSER::resolveSchLibraries(), and EAGLE_BIN_PARSER::toXml().