KiCad PCB EDA Suite
|
A configuration record per the SPECCTRA DSN file spec. More...
#include <specctra.h>
Public Member Functions | |
PARSER (ELEM *aParent) | |
void | FormatContents (OUTPUTFORMATTER *out, int nestLevel) override |
Write the contents as ASCII out to an OUTPUTFORMATTER according to the SPECCTRA DSN format. | |
DSN_T | Type () const |
const char * | Name () const |
virtual UNIT_RES * | GetUnits () const |
Return the units for this section. | |
virtual void | Format (OUTPUTFORMATTER *out, int nestLevel) |
Write this object 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 | |
DSN_T | type |
ELEM * | parent |
Static Protected Attributes | |
static STRING_FORMATTER | sf |
Private Attributes | |
char | string_quote |
bool | space_in_quoted_tokens |
bool | case_sensitive |
bool | wires_include_testpoint |
bool | routes_include_testpoint |
bool | routes_include_guides |
bool | routes_include_image_conductor |
bool | via_rotate_first |
bool | generated_by_freeroute |
STRINGS | constants |
This holds pairs of strings, one pair for each constant definition. | |
std::string | host_cad |
std::string | host_version |
Friends | |
class | SPECCTRA_DB |
A configuration record per the SPECCTRA DSN file spec.
It is not actually a parser, but rather corresponds to <parser_descriptor>
Definition at line 368 of file specctra.h.
DSN::PARSER::PARSER | ( | ELEM * | aParent | ) |
Definition at line 3865 of file specctra.cpp.
References case_sensitive, generated_by_freeroute, GetBuildVersion(), host_cad, host_version, routes_include_guides, routes_include_image_conductor, routes_include_testpoint, space_in_quoted_tokens, string_quote, TO_UTF8, via_rotate_first, and wires_include_testpoint.
|
virtualinherited |
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 in DSN::UNIT_RES, DSN::RECTANGLE, DSN::RULE, DSN::LAYER_RULE, DSN::PATH, DSN::BOUNDARY, DSN::CIRCLE, DSN::QARC, DSN::WINDOW, DSN::KEEPOUT, DSN::VIA, DSN::CONTROL, DSN::LAYER, DSN::SPECCTRA_LAYER_PAIR, DSN::LAYER_NOISE_WEIGHT, DSN::TOKPROP, DSN::STRINGPROP, DSN::GRID, DSN::PLACE, DSN::COMPONENT, DSN::SHAPE, DSN::PIN, DSN::IMAGE, DSN::PADSTACK, DSN::FROMTO, DSN::COMP_ORDER, DSN::NET, DSN::CLASS, DSN::WIRE, DSN::WIRE_VIA, DSN::PCB, DSN::ANCESTOR, DSN::SUPPLY_PIN, DSN::NET_OUT, and DSN::SESSION.
Definition at line 3773 of file specctra.cpp.
References DSN::ELEM::FormatContents(), DSN::ELEM::Name(), and OUTPUTFORMATTER::Print().
Referenced by DSN::WINDOW::Format(), DSN::KEEPOUT::Format(), DSN::CONTROL::Format(), DSN::PLACE::Format(), DSN::SHAPE::Format(), DSN::CLASS::Format(), DSN::WIRE::Format(), DSN::PCB::Format(), DSN::SESSION::Format(), DSN::ELEM_HOLDER::FormatContents(), DSN::CLASS_CLASS::FormatContents(), DSN::STRUCTURE::FormatContents(), and DSN::ROUTE::FormatContents().
|
overridevirtual |
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.
Definition at line 3885 of file specctra.cpp.
References case_sensitive, constants, OUTPUTFORMATTER::GetQuoteChar(), host_cad, host_version, OUTPUTFORMATTER::Print(), routes_include_guides, routes_include_image_conductor, routes_include_testpoint, space_in_quoted_tokens, string_quote, via_rotate_first, and wires_include_testpoint.
|
virtualinherited |
Return the units for this section.
Derived classes may override this to check for section specific overrides.
Reimplemented in DSN::STRUCTURE, DSN::PLACEMENT, DSN::IMAGE, DSN::PADSTACK, DSN::LIBRARY, DSN::WIRING, DSN::PCB, and DSN::ROUTE.
Definition at line 3764 of file specctra.cpp.
References DSN::UNIT_RES::Default, DSN::ELEM::GetUnits(), and DSN::ELEM::parent.
Referenced by DSN::SPECCTRA_DB::FromSESSION(), DSN::ELEM::GetUnits(), DSN::STRUCTURE::GetUnits(), DSN::PLACEMENT::GetUnits(), DSN::IMAGE::GetUnits(), DSN::PADSTACK::GetUnits(), DSN::LIBRARY::GetUnits(), DSN::WIRING::GetUnits(), DSN::PCB::GetUnits(), and DSN::ROUTE::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 262 of file specctra.h.
References STRING_FORMATTER::Clear(), DSN::ELEM::FormatContents(), STRING_FORMATTER::GetString(), DSN::ELEM::sf, and STRING_FORMATTER::StripUseless().
Referenced by DSN::IMAGE::Compare(), and DSN::PADSTACK::Compare().
|
inherited |
Definition at line 3759 of file specctra.cpp.
References DSN::ELEM::type.
Referenced by DSN::ELEM::Format(), DSN::UNIT_RES::Format(), DSN::RECTANGLE::Format(), DSN::RULE::Format(), DSN::LAYER_RULE::Format(), DSN::PATH::Format(), DSN::BOUNDARY::Format(), DSN::CIRCLE::Format(), DSN::QARC::Format(), DSN::WINDOW::Format(), DSN::KEEPOUT::Format(), DSN::VIA::Format(), DSN::CONTROL::Format(), DSN::LAYER::Format(), DSN::SPECCTRA_LAYER_PAIR::Format(), DSN::LAYER_NOISE_WEIGHT::Format(), DSN::TOKPROP::Format(), DSN::STRINGPROP::Format(), DSN::GRID::Format(), DSN::PLACE::Format(), DSN::COMPONENT::Format(), DSN::SHAPE::Format(), DSN::IMAGE::Format(), DSN::PADSTACK::Format(), DSN::FROMTO::Format(), DSN::COMP_ORDER::Format(), DSN::NET::Format(), DSN::CLASS::Format(), DSN::WIRE::Format(), DSN::WIRE_VIA::Format(), DSN::PCB::Format(), DSN::ANCESTOR::Format(), DSN::SUPPLY_PIN::Format(), and DSN::SESSION::Format().
|
inlineinherited |
Definition at line 246 of file specctra.h.
References DSN::ELEM::parent.
Referenced by DSN::LIBRARY::AddPadstack(), DSN::KEEPOUT::AddWindow(), DSN::LIBRARY::AppendIMAGE(), DSN::LIBRARY::AppendPADSTACK(), DSN::LIBRARY::AppendVia(), DSN::STRUCTURE::SetBOUNDARY(), DSN::STRUCTURE::SetPlaceBOUNDARY(), DSN::WINDOW::SetShape(), DSN::KEEPOUT::SetShape(), and DSN::WIRE::SetShape().
|
inlineinherited |
Definition at line 209 of file specctra.h.
References DSN::ELEM::type.
Referenced by DSN::SPECCTRA_DB::doCLASS_CLASS(), DSN::ELEM_HOLDER::FindElem(), DSN::SPECCTRA_DB::FromSESSION(), DSN::SPECCTRA_DB::makeVIA(), DSN::WINDOW::SetShape(), DSN::KEEPOUT::SetShape(), and DSN::WIRE::SetShape().
|
friend |
Definition at line 377 of file specctra.h.
|
private |
Definition at line 381 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
private |
This holds pairs of strings, one pair for each constant definition.
Definition at line 390 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), and FormatContents().
|
private |
Definition at line 387 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), and PARSER().
|
private |
Definition at line 392 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
private |
Definition at line 393 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
protectedinherited |
Definition at line 275 of file specctra.h.
Referenced by DSN::ELEM::GetUnits(), and DSN::ELEM::SetParent().
|
private |
Definition at line 384 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
private |
Definition at line 385 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
private |
Definition at line 383 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
staticprotectedinherited |
Definition at line 272 of file specctra.h.
Referenced by DSN::ELEM::makeHash().
|
private |
Definition at line 380 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), DSN::SPECCTRA_DB::FromBOARD(), and PARSER().
|
private |
Definition at line 379 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
protectedinherited |
Definition at line 274 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doNET(), DSN::UNIT_RES::Format(), DSN::ELEM::Name(), and DSN::ELEM::Type().
|
private |
Definition at line 386 of file specctra.h.
Referenced by DSN::SPECCTRA_DB::doPARSER(), FormatContents(), and PARSER().
|
private |
Definition at line 382 of file specctra.h.
Referenced by FormatContents(), and PARSER().