KiCad PCB EDA Suite
|
A "(shape ..)" element in the specctra dsn spec. More...
#include <specctra.h>
Public Member Functions | |
SHAPE (ELEM *aParent, DSN_T aType=T_shape) | |
Takes a DSN_T aType of T_outline. | |
void | SetConnect (DSN_T aConnect) |
void | Format (OUTPUTFORMATTER *out, int nestLevel) override |
Write this object as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format. | |
void | SetShape (ELEM *aShape) |
DSN_T | Type () const |
const char * | Name () const |
virtual UNIT_RES * | GetUnits () const |
Return the units for this section. | |
virtual void | FormatContents (OUTPUTFORMATTER *out, int nestLevel) |
Write the contents as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format. | |
void | SetParent (ELEM *aParent) |
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 | |
ELEM * | shape |
DSN_T | type |
ELEM * | parent |
Static Protected Attributes | |
static STRING_FORMATTER | sf |
Private Attributes | |
DSN_T | m_connect |
WINDOWS | m_windows |
Friends | |
class | SPECCTRA_DB |
A "(shape ..)" element in the specctra dsn spec.
It is not a <shape_descriptor>, which is one of things that this elements contains, i.e. in its "shape" field. This class also implements the "(outline ...)" element as a dual personality.
Definition at line 1898 of file specctra.h.
Takes a DSN_T aType of T_outline.
Definition at line 1904 of file specctra.h.
References m_connect, and DSN::WINDOW::WINDOW().
|
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 1915 of file specctra.h.
References DSN::GetTokenText(), m_connect, m_windows, DSN::ELEM::Name(), OUTPUTFORMATTER::Print(), and DSN::WINDOW::shape.
|
inlinevirtualinherited |
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 in DSN::CLASS_CLASS, DSN::CLASSES, DSN::COMPONENT, DSN::ELEM_HOLDER, DSN::HISTORY, DSN::IMAGE, DSN::LIBRARY, DSN::NETWORK, DSN::PADSTACK, DSN::PARSER, DSN::PLACEMENT, DSN::REGION, DSN::ROUTE, DSN::STRUCTURE, DSN::STRUCTURE_OUT, DSN::TOPOLOGY, DSN::WAS_IS, and DSN::WIRING.
Definition at line 247 of file specctra.h.
Referenced by Format(), and makeHash().
|
virtualinherited |
Return the units for this section.
Derived classes may override this to check for section specific overrides.
Reimplemented in DSN::IMAGE, DSN::LIBRARY, DSN::PADSTACK, DSN::PCB, DSN::PLACEMENT, DSN::ROUTE, DSN::STRUCTURE, and DSN::WIRING.
Definition at line 3773 of file specctra.cpp.
References DSN::UNIT_RES::Default, and parent.
Referenced by DSN::SPECCTRA_DB::FromSESSION(), DSN::IMAGE::GetUnits(), DSN::LIBRARY::GetUnits(), DSN::PADSTACK::GetUnits(), DSN::PCB::GetUnits(), DSN::PLACEMENT::GetUnits(), DSN::ROUTE::GetUnits(), DSN::STRUCTURE::GetUnits(), and DSN::WIRING::GetUnits().
|
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 268 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().
|
inline |
Definition at line 1910 of file specctra.h.
References m_connect.
|
inlineinherited |
Definition at line 252 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 863 of file specctra.h.
References DSN::ELEM::ELEM(), DSN::ELEM::SetParent(), shape, and DSN::ELEM::Type().
Referenced by DSN::SPECCTRA_DB::FromBOARD(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::SPECCTRA_DB::makePADSTACK(), and DSN::SPECCTRA_DB::makeVia().
|
inlineinherited |
Definition at line 215 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 |
|
private |
Definition at line 1943 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doSHAPE(), Format(), SetConnect(), and SHAPE().
|
private |
Definition at line 1954 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doSHAPE(), and Format().
|
protectedinherited |
Definition at line 281 of file specctra.h.
Referenced by ELEM(), GetUnits(), and SetParent().
|
staticprotectedinherited |
Definition at line 278 of file specctra.h.
Referenced by makeHash().
|
protectedinherited |
Definition at line 898 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doSHAPE(), DSN::SPECCTRA_DB::doWINDOW(), DSN::SHAPE::Format(), Format(), DSN::SPECCTRA_DB::makeVIA(), SetShape(), WINDOW(), and ~WINDOW().
|
protectedinherited |
Definition at line 280 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doNET(), ELEM(), DSN::UNIT_RES::Format(), Name(), and Type().