|
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 2097 of file specctra.h.
|
privateinherited |
Definition at line 361 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 2105 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 2115 of file specctra.h.
|
inlineinherited |
Definition at line 325 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 344 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 3825 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 356 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 3799 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 2136 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 2148 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 2121 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 2184 of file specctra.h.
References DSN::ELEM::GetUnits(), and m_unit.
|
inlineinherited |
Definition at line 342 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
|
inlineinherited |
Return the number of ELEMs in this holder.
Definition at line 320 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 266 of file specctra.h.
References FormatContents(), and sf.
Referenced by DSN::IMAGE::Compare(), and DSN::PADSTACK::Compare().
|
inherited |
Definition at line 3768 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 351 of file specctra.h.
References At(), and DSN::ELEM::ELEM().
|
inlineinherited |
Definition at line 336 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
Definition at line 330 of file specctra.h.
References DSN::ELEM::ELEM(), and kids.
|
inline |
Definition at line 2131 of file specctra.h.
References m_padstack_id.
Referenced by DSN::SPECCTRA_DB::makePADSTACK(), and DSN::SPECCTRA_DB::makeVia().
|
inlineinherited |
Definition at line 250 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 213 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 2203 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), and PADSTACK().
|
private |
Definition at line 2204 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 2195 of file specctra.h.
Referenced by Compare().
|
private |
Definition at line 2197 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 2202 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), and PADSTACK().
|
private |
Definition at line 2207 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), PADSTACK(), and ~PADSTACK().
|
private |
Definition at line 2198 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), FormatContents(), GetUnits(), PADSTACK(), and ~PADSTACK().
|
private |
Definition at line 2205 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPADSTACK(), and FormatContents().
|
protectedinherited |
Definition at line 279 of file specctra.h.
Referenced by ELEM(), GetUnits(), and SetParent().
|
staticprotectedinherited |
Definition at line 276 of file specctra.h.
Referenced by makeHash().
|
protectedinherited |
Definition at line 278 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doNET(), ELEM(), DSN::UNIT_RES::Format(), Name(), and Type().