|
KiCad PCB EDA Suite
|
Hold either a via or a pad definition. More...
#include <specctra.h>
Public Member Functions | |
| PADSTACK () | |
| Cannot take ELEM* aParent because PADSTACKSET confuses this with a copy constructor and causes havoc. | |
| ~PADSTACK () | |
| const std::string & | GetPadstackId () |
| void | SetPadstackId (const char *aPadstackId) |
| void | Format (OUTPUTFORMATTER *out, int nestLevel) override |
| Write this object as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format. | |
| void | FormatContents (OUTPUTFORMATTER *out, int nestLevel) override |
| Write the contents as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format. | |
| UNIT_RES * | GetUnits () const override |
| Return the units for this section. | |
| int | FindElem (DSN_T aType, int instanceNum=0) |
| Find a particular instance number of a given type of ELEM. | |
| int | Length () const |
| Return the number of ELEMs in this holder. | |
| void | Append (ELEM *aElem) |
| ELEM * | Replace (int aIndex, ELEM *aElem) |
| ELEM * | Remove (int aIndex) |
| void | Insert (int aIndex, ELEM *aElem) |
| ELEM * | At (int aIndex) const |
| ELEM * | operator[] (int aIndex) const |
| void | Delete (int aIndex) |
| DSN_T | Type () const |
| const char * | Name () const |
| void | SetParent (ELEM *aParent) |
Static Public Member Functions | |
| static int | Compare (PADSTACK *lhs, PADSTACK *rhs) |
| Compare two objects of this type and returns <0, 0, or >0. | |
Protected Member Functions | |
| std::string | makeHash () |
| Return a string which uniquely represents this ELEM among other ELEMs of the same derived class as "this" one. | |
Protected Attributes | |
| DSN_T | type |
| ELEM * | parent |
Static Protected Attributes | |
| static STRING_FORMATTER | sf |
Private Types | |
| typedef boost::ptr_vector< ELEM > | ELEM_ARRAY |
Private Attributes | |
| std::string | m_hash |
| a hash string used by Compare(), not Format()ed/exported. | |
| std::string | m_padstack_id |
| UNIT_RES * | m_unit |
| DSN_T | m_rotate |
| DSN_T | m_absolute |
| DSN_T | m_attach |
| std::string | m_via_id |
| RULE * | m_rules |
| ELEM_ARRAY | kids |
| ELEM pointers. | |
Friends | |
| class | SPECCTRA_DB |
Hold either a via or a pad definition.
Definition at line 2093 of file specctra.h.
|
privateinherited |
Definition at line 357 of file specctra.h.
|
inline |
Cannot take ELEM* aParent because PADSTACKSET confuses this with a copy constructor and causes havoc.
Instead set parent with LIBRARY::AddPadstack()
Definition at line 2101 of file specctra.h.
References DSN::ELEM_HOLDER::ELEM_HOLDER(), m_absolute, m_attach, m_rotate, m_rules, and m_unit.
Referenced by Compare().
|
inline |
Definition at line 2111 of file specctra.h.
|
inlineinherited |
Definition at line 321 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
Referenced by DSN::SPECCTRA_DB::doCLASS_CLASS(), DSN::SPECCTRA_DB::doCONTROL(), DSN::SPECCTRA_DB::doIMAGE(), DSN::SPECCTRA_DB::doPADSTACK(), DSN::SPECCTRA_DB::doREGION(), DSN::SPECCTRA_DB::doSTRUCTURE(), DSN::SPECCTRA_DB::makePADSTACK(), and DSN::SPECCTRA_DB::makeVia().
|
inlineinherited |
Definition at line 340 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
Referenced by DSN::CONTROL::Format(), FormatContents(), DSN::STRUCTURE::FormatContents(), and operator[]().
Compare two objects of this type and returns <0, 0, or >0.
Definition at line 3823 of file specctra.cpp.
References m_hash, m_padstack_id, DSN::ELEM::makeHash(), PADSTACK(), and result.
Referenced by DSN::LIBRARY::FindVia(), and DSN::operator<().
|
inlineinherited |
Definition at line 352 of file specctra.h.
References kids.
|
inherited |
Find a particular instance number of a given type of ELEM.
| aType | The type of ELEM to find |
| instanceNum | The instance number of to find: 0 for first, 1 for second, etc. |
Definition at line 3797 of file specctra.cpp.
References kids, T, and DSN::ELEM::Type().
|
inlineoverridevirtual |
Write this object as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format.
| out | The formatter to write to. |
| nestLevel | A multiple of the number of spaces to precede the output with. |
| IO_ERROR | if a system error writing the output, such as a full disk. |
Reimplemented from DSN::ELEM.
Definition at line 2132 of file specctra.h.
References FormatContents(), OUTPUTFORMATTER::GetQuoteChar(), m_padstack_id, DSN::ELEM::Name(), and OUTPUTFORMATTER::Print().
|
inlineoverridevirtual |
Write the contents as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format.
This is the same as Format() except that the outer wrapper is not included.
| out | The formatter to write to. |
| nestLevel | A multiple of the number of spaces to precede the output with. |
| IO_ERROR | if a system error writing the output, such as a full disk. |
Reimplemented from DSN::ELEM_HOLDER.
Definition at line 2144 of file specctra.h.
References DSN::ELEM_HOLDER::FormatContents(), OUTPUTFORMATTER::GetQuoteChar(), DSN::GetTokenText(), m_absolute, m_attach, m_rotate, m_rules, m_unit, m_via_id, and OUTPUTFORMATTER::Print().
Referenced by Format().
|
inline |
Definition at line 2117 of file specctra.h.
References m_padstack_id.
|
inlineoverridevirtual |
Return the units for this section.
Derived classes may override this to check for section specific overrides.
Reimplemented from DSN::ELEM.
Definition at line 2180 of file specctra.h.
References DSN::ELEM::GetUnits(), and m_unit.
|
inlineinherited |
Definition at line 338 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
|
inlineinherited |
Return the number of ELEMs in this holder.
Definition at line 316 of file specctra.h.
References kids.
Referenced by DSN::CONTROL::Format(), FormatContents(), DSN::STRUCTURE::FormatContents(), and DSN::SPECCTRA_DB::makeVIA().
|
inlineprotectedinherited |
Return a string which uniquely represents this ELEM among other ELEMs of the same derived class as "this" one.
It is not usable for all derived classes, only those which plan for it by implementing a FormatContents() function that captures all info which will be used in the subsequent string compare. THIS SHOULD NORMALLY EXCLUDE THE TYPENAME, AND INSTANCE NAME OR ID AS WELL.
Definition at line 262 of file specctra.h.
References FormatContents(), and sf.
Referenced by DSN::IMAGE::Compare(), and DSN::PADSTACK::Compare().
|
inherited |
Definition at line 3766 of file specctra.cpp.
References type.
Referenced by DSN::ANCESTOR::Format(), DSN::BOUNDARY::Format(), DSN::CIRCLE::Format(), DSN::CLASS::Format(), DSN::COMP_ORDER::Format(), DSN::COMPONENT::Format(), DSN::CONTROL::Format(), Format(), DSN::FROMTO::Format(), DSN::GRID::Format(), DSN::IMAGE::Format(), DSN::KEEPOUT::Format(), DSN::LAYER::Format(), DSN::LAYER_NOISE_WEIGHT::Format(), DSN::LAYER_RULE::Format(), DSN::NET::Format(), DSN::PADSTACK::Format(), DSN::PATH::Format(), DSN::PCB::Format(), DSN::PLACE::Format(), DSN::QARC::Format(), DSN::RECTANGLE::Format(), DSN::RULE::Format(), DSN::SESSION::Format(), DSN::SHAPE::Format(), DSN::SPECCTRA_LAYER_PAIR::Format(), DSN::STRINGPROP::Format(), DSN::SUPPLY_PIN::Format(), DSN::TOKPROP::Format(), DSN::UNIT_RES::Format(), DSN::VIA::Format(), DSN::WINDOW::Format(), DSN::WIRE::Format(), and DSN::WIRE_VIA::Format().
|
inlineinherited |
Definition at line 347 of file specctra.h.
References At(), and DSN::ELEM::ELEM().
|
inlineinherited |
Definition at line 332 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
Definition at line 326 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
|
inline |
Definition at line 2127 of file specctra.h.
References m_padstack_id.
Referenced by DSN::SPECCTRA_DB::makePADSTACK(), and DSN::SPECCTRA_DB::makeVia().
|
inlineinherited |
Definition at line 246 of file specctra.h.
References ELEM(), and parent.
Referenced by DSN::LIBRARY::AddPadstack(), DSN::KEEPOUT::AddWindow(), DSN::LIBRARY::AppendIMAGE(), DSN::LIBRARY::AppendPADSTACK(), DSN::LIBRARY::AppendVia(), DSN::KEEPOUT::SetShape(), DSN::WINDOW::SetShape(), and DSN::WIRE::SetShape().
|
inlineinherited |
Definition at line 209 of file specctra.h.
References type.
Referenced by DSN::SPECCTRA_DB::doCLASS_CLASS(), DSN::ELEM_HOLDER::FindElem(), DSN::SPECCTRA_DB::FromSESSION(), DSN::SPECCTRA_DB::makeVIA(), DSN::KEEPOUT::SetShape(), DSN::WINDOW::SetShape(), and DSN::WIRE::SetShape().
|
friend |
|
privateinherited |
|
private |
Definition at line 2199 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), and PADSTACK().
|
private |
Definition at line 2200 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), and PADSTACK().
|
private |
a hash string used by Compare(), not Format()ed/exported.
Definition at line 2191 of file specctra.h.
Referenced by Compare().
|
private |
Definition at line 2193 of file specctra.h.
Referenced by Compare(), DSN::SPECCTRA_DB::doPADSTACK(), Format(), GetPadstackId(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::SPECCTRA_DB::makeVIA(), and SetPadstackId().
|
private |
Definition at line 2198 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), and PADSTACK().
|
private |
Definition at line 2203 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), PADSTACK(), and ~PADSTACK().
|
private |
Definition at line 2194 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), GetUnits(), PADSTACK(), and ~PADSTACK().
|
private |
Definition at line 2201 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), and FormatContents().
|
protectedinherited |
Definition at line 275 of file specctra.h.
Referenced by ELEM(), GetUnits(), and SetParent().
|
staticprotectedinherited |
Definition at line 272 of file specctra.h.
Referenced by makeHash().
|
protectedinherited |
Definition at line 274 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doNET(), ELEM(), DSN::UNIT_RES::Format(), Name(), and Type().