|
KiCad PCB EDA Suite
|
Parses a DipTrace .dip binary board file and populates a KiCad BOARD. More...
#include <diptrace_pcb_parser.h>
Public Member Functions | |
| PCB_PARSER (const wxString &aFileName, BOARD *aBoard) | |
| Construct a parser for the given file. | |
| ~PCB_PARSER () | |
| void | Parse () |
| Parse the file and populate the board. Throws IO_ERROR on failure. | |
| int | ScanLocatorUseCount () const |
| Number of objects or sections that were located by byte-pattern scanning rather than a deterministic field-derived offset during the last Parse(). | |
| int | ComponentLocatorScans () const |
| int | PadLocatorScans () const |
| int | ShapeLocatorScans () const |
| int | MountHoleLocatorScans () const |
| int | SectionLocatorScans () const |
| wxString | GenerateDesignRules () const |
| Build a KiCad custom design-rule (.kicad_dru) document for the per-zone DipTrace properties that have no native KiCad zone equivalent. | |
Private Member Functions | |
| void | ParseMagic () |
| void | ParseBoardProperties () |
| void | ParseOutline () |
| void | ParsePostOutline () |
| void | ParseLayers () |
| void | ParseFontStyle () |
| void | ParsePatternNameGroups (int aGroupCount) |
| void | ParsePatternStyleGroups (int aGroupCount) |
| void | ParseImplicitPatternStyleGroup () |
| void | ParseDesignRules () |
| void | FindAndParseComponents () |
| void | ApplyPlacementAngles () |
| Refine component placement angles with the exact values from the placement section. | |
| void | ParsePostComponentSections () |
| std::vector< std::pair< size_t, size_t > > | FieldWalkComponentBoundaries (size_t aUpperBound) |
| Deterministically walk the component boundaries from the design-rules end, anchoring on each component's 37-byte tail (followed by a boundary core) instead of scanning the whole region for boundary patterns. | |
| bool | ParseSingleComponent (size_t aBoundaryOffset, size_t aUpperBound, DT_COMPONENT &aComp) |
| void | FindPadsInRegion (DT_COMPONENT &aComp, size_t aRegionStart, size_t aRegionEnd) |
| Search a component's data region for pad records using pad name anchors. | |
| void | FindMountHolesInRegion (DT_COMPONENT &aComp, size_t aRegionStart, size_t aRegionEnd) |
| Parse component-local mechanical holes (NPTH) from the post-pad region. | |
| void | FindShapesInRegion (DT_COMPONENT &aComp, size_t aRegionStart, size_t aRegionEnd) |
| Parse footprint outline shapes from the region after pad data. | |
| void | FindShapesInFontBlocks (DT_COMPONENT &aComp, size_t aRegionStart, size_t aRegionEnd) |
| Parse shapes from per-layer font blocks (v46+ format). | |
| void | FindShapesInChainedBlocks (DT_COMPONENT &aComp, size_t aRegionStart, size_t aRegionEnd) |
| Parse shapes from chained fixed-size records used by some v46+ footprints. | |
| void | ParseComponentTail (DT_COMPONENT &aComp, size_t aRegionEnd) |
| Parse the 37-byte tail at the end of a component region to extract text positioning. | |
| void | FindAndParseNets (size_t aSearchStart, size_t aSearchEnd) |
| void | ParseNetRouting (DT_NET &aNet) |
| void | InferPadNetsFromRoutingRefs () |
| void | FindAndParseZones (size_t aSearchStart, size_t aSearchEnd) |
| void | ApplyBoardSettings () |
| void | CreateBoardOutline () |
| void | CreateFootprint (const DT_COMPONENT &aComp) |
| void | CreateStandaloneVias () |
| void | CreateTextObject (const DT_TEXT_OBJECT &aText) |
| void | CreateNets () |
| void | CreateTracksAndVias () |
| void | CreateZones () |
| void | CreatePlaneZones () |
| Synthesize board-outline-bounded plane fills for negative/solid-plane copper layers. | |
| NETINFO_ITEM * | ResolveNetByIndex (int aDipTraceNetIndex) const |
| Resolve a DipTrace net index to the corresponding KiCad net object. | |
| const DT_NET * | ResolveDipTraceNetByIndex (int aDipTraceNetIndex) const |
| void | FindAndParseTextObjects (size_t aSearchStart, size_t aSearchEnd) |
| void | ParseTextRecords (int aCount) |
| PCB_LAYER_ID | MapLayer (int aDipTraceLayer) const |
| Map a DipTrace layer index to a KiCad PCB_LAYER_ID. | |
| PCB_LAYER_ID | MapCopperLayer (int aDipTraceLayer) const |
| void | SkipInterRulesetTransition () |
| Read an inter-ruleset transition block. | |
Static Private Member Functions | |
| static bool | ClassifyStandaloneVia (const DT_COMPONENT &aComp) |
| Decide whether a parsed component is a standalone via rather than a placed footprint. | |
| static int | ToKiCadCoord (int aDipTraceCoord) |
| Convert a DipTrace coordinate (DipTrace units) to KiCad internal units (nm). | |
| static double | ToKiCadAngleDeg (int aDipTraceAngle) |
| Convert a DipTrace angle value to degrees (tenths of degree). | |
| static bool | TryReadStringAt (const uint8_t *aData, size_t aDataSize, size_t aPos, int aVersion, wxString &aOut, size_t &aNewPos) |
| Try to read a string at a given raw data position. | |
| static std::vector< size_t > | FindAllBoundaries (const uint8_t *aData, size_t aDataSize, const uint8_t *aPattern, size_t aPatternLen, size_t aStart, size_t aEnd) |
| Find all occurrences of a byte pattern within data[start:end]. | |
Parses a DipTrace .dip binary board file and populates a KiCad BOARD.
Definition at line 295 of file diptrace_pcb_parser.h.
| PCB_PARSER::PCB_PARSER | ( | const wxString & | aFileName, |
| BOARD * | aBoard ) |
Construct a parser for the given file.
| aFileName | path to the .dip file |
| aBoard | target BOARD to populate (must not be null) |
Definition at line 932 of file diptrace_pcb_parser.cpp.
References m_board, m_hasInlineVersion, m_hasLegacyMagicLayout, m_reader, and m_version.
| PCB_PARSER::~PCB_PARSER | ( | ) |
Definition at line 942 of file diptrace_pcb_parser.cpp.
|
private |
Definition at line 4781 of file diptrace_pcb_parser.cpp.
References BOARD_STACKUP::BuildDefaultStackupList(), DIPTRACE::DT_DESIGN_RULE::clearance, DIPTRACE::DT_VIA_STYLE::drillDiameter, NET_SETTINGS::GetDefaultNetclass(), BOARD_DESIGN_SETTINGS::GetStackupDescriptor(), m_board, m_designRules, m_layers, BOARD_DESIGN_SETTINGS::m_NetSettings, m_viaStyles, MapCopperLayer(), MapLayer(), DIPTRACE::DT_VIA_STYLE::outerDiameter, BOARD_STACKUP::RemoveAll(), BASE_SET::set(), ToKiCadCoord(), DIPTRACE::DT_DESIGN_RULE::trackWidth, and UNDEFINED_LAYER.
Referenced by Parse().
|
private |
Refine component placement angles with the exact values from the placement section.
The per-component metadata block yields only a 90-degree-snapped quarter-turn count. A separate placement section stores the exact placement angle (radians, fixed-point) for every component, but the section has no per-entry key that maps cleanly back to a geometry record. When the section's angle list lines up with the parsed components – same count and every angle snapping to the component's own quarter-turn – the exact angles are adopted; otherwise the snapped quarter turns are kept.
Definition at line 1927 of file diptrace_pcb_parser.cpp.
References comp, m_components, M_PI, m_reader, ReadInt4At(), and traceDiptraceIo.
Referenced by Parse().
|
staticprivate |
Decide whether a parsed component is a standalone via rather than a placed footprint.
Definition at line 2044 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_COMPONENT::displayName, DIPTRACE::DT_COMPONENT::libraryPath, and DIPTRACE::DT_COMPONENT::patternName.
Referenced by FindAndParseComponents().
|
inline |
Definition at line 322 of file diptrace_pcb_parser.h.
References m_componentLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
private |
Definition at line 4851 of file diptrace_pcb_parser.cpp.
References _, addSegment(), APPEND, ARC, Edge_Cuts, end, m_bboxXMax, m_bboxXMin, m_bboxYMax, m_bboxYMin, m_board, m_outline, next(), pcbIUScale, SEGMENT, EDA_SHAPE::SetArcGeometry(), EDA_SHAPE::SetEnd(), PCB_SHAPE::SetLayer(), EDA_SHAPE::SetStart(), PCB_SHAPE::SetStroke(), SOLID, ToKiCadCoord(), v1, and v2.
Referenced by Parse().
|
private |
Definition at line 5026 of file diptrace_pcb_parser.cpp.
References std::abs(), FOOTPRINT::Add(), PADSTACK::ALL_LAYERS, APPEND, ARC, DIPTRACE::DT_COMPONENT::bboxHeight, DIPTRACE::DT_COMPONENT::bboxWidth, center, chain, CIRCLE, CUSTOM, DEGREES_T, DIPTRACE::DT_MOUNT_HOLE::drillDiameter, DIPTRACE::DT_PAD::drillHeight, DIPTRACE::DT_PAD::drillWidth, DT_FP_LAYER_TOP_ASSY, DT_FP_LAYER_TOP_COURTYARD, DT_FP_LAYER_TOP_KEEPOUT, DT_FP_LAYER_TOP_MASK, DT_FP_LAYER_TOP_OUTLINE, DT_FP_LAYER_TOP_PASTE, DT_FP_LAYER_TOP_SILK, DIPTRACE::DT_SHAPE_ARC, DIPTRACE::DT_SHAPE_CIRCLE, DIPTRACE::DT_SHAPE_FILLOBROUND, DIPTRACE::DT_SHAPE_LINE, DIPTRACE::DT_SHAPE_RECT, F_CrtYd, F_Fab, F_Mask, F_Paste, F_SilkS, FOOTPRINT::Flip(), FOOTPRINT, FP_SHAPE_DEFAULT_WIDTH, FP_SHAPE_NORM_RANGE, FOOTPRINT::GetPosition(), DIPTRACE::DT_COMPONENT::hasPlacementAngle, DIPTRACE::DT_COMPONENT::hasPlacementQuarterTurns, DIPTRACE::DT_COMPONENT::hasTailData, DIPTRACE::DT_PAD::height, DIPTRACE::DT_COMPONENT::holes, DIPTRACE::DT_COMPONENT::isStandaloneVia, DIPTRACE::DT_COMPONENT::layer, DIPTRACE::DT_FP_SHAPE::layer, m_board, m_routingAnchorCacheBuilt, m_routingAnchorsByNet, m_trackChains, DIPTRACE::DT_FP_SHAPE::midX, DIPTRACE::DT_FP_SHAPE::midY, DIPTRACE::DT_PAD::mountType, DIPTRACE::DT_PAD::netIndex, NPTH, DIPTRACE::DT_PAD::number, OBLONG, DIPTRACE::DT_PAD::orientClass, DIPTRACE::DT_MOUNT_HOLE::outerDiameter, OVAL, PAD, pad, DIPTRACE::DT_COMPONENT::pads, DIPTRACE::DT_COMPONENT::patternName, DIPTRACE::DT_COMPONENT::placementAngleDeg, DIPTRACE::DT_COMPONENT::placementQuarterTurns, DIPTRACE::DT_PAD::polygonVertices, DIPTRACE::DT_COMPONENT::positionX, DIPTRACE::DT_COMPONENT::positionY, PTH, PAD::PTHMask(), radius, RECTANGLE, DIPTRACE::DT_COMPONENT::refdes, DIPTRACE::DT_COMPONENT::refdesVisible, DIPTRACE::DT_COMPONENT::refdesYOffset, FOOTPRINT::Reference(), ResolveNetByIndex(), DIPTRACE::DT_COMPONENT::rotation, SEGMENT, EDA_SHAPE::SetArcGeometry(), PAD::SetAttribute(), EDA_SHAPE::SetCenter(), PAD::SetDrillShape(), PAD::SetDrillSize(), EDA_SHAPE::SetEnd(), EDA_SHAPE::SetFilled(), FOOTPRINT::SetFPID(), PCB_SHAPE::SetLayer(), PAD::SetLayerSet(), LIB_ID::SetLibItemName(), PAD::SetNumber(), FOOTPRINT::SetOrientation(), FOOTPRINT::SetPosition(), PAD::SetPosition(), PCB_TEXT::SetPosition(), FOOTPRINT::SetReference(), EDA_SHAPE::SetShape(), PAD::SetShape(), PAD::SetSize(), EDA_SHAPE::SetStart(), FOOTPRINT::SetValue(), EDA_TEXT::SetVisible(), EDA_SHAPE::SetWidth(), DIPTRACE::DT_COMPONENT::shapes, ShouldDumpFootprintOrientation(), SMD, PAD::SMDMask(), DIPTRACE::DT_PAD::style, ToKiCadAngleDeg(), ToKiCadCoord(), TOP_BOTTOM, traceDiptraceIo, DIPTRACE::DT_FP_SHAPE::type, PAD::UnplatedHoleMask(), FOOTPRINT::Value(), DIPTRACE::DT_COMPONENT::value, DIPTRACE::DT_COMPONENT::valueVisible, DIPTRACE::DT_COMPONENT::valueYOffset, DIPTRACE::DT_FP_SHAPE::width, DIPTRACE::DT_PAD::width, DIPTRACE::DT_MOUNT_HOLE::x, DIPTRACE::DT_PAD::x, DIPTRACE::DT_TRACK_NODE::x, VECTOR2< T >::x, DIPTRACE::DT_FP_SHAPE::x1, DIPTRACE::DT_FP_SHAPE::x2, DIPTRACE::DT_MOUNT_HOLE::y, DIPTRACE::DT_PAD::y, DIPTRACE::DT_TRACK_NODE::y, VECTOR2< T >::y, DIPTRACE::DT_FP_SHAPE::y1, and DIPTRACE::DT_FP_SHAPE::y2.
Referenced by Parse().
|
private |
Definition at line 5512 of file diptrace_pcb_parser.cpp.
References _, APPEND, NETINFO_ITEM::GetNetname(), m_board, m_dipTraceNetByIndex, m_kicadNetByDipTraceIndex, and m_nets.
Referenced by Parse().
|
private |
Synthesize board-outline-bounded plane fills for negative/solid-plane copper layers.
Definition at line 6136 of file diptrace_pcb_parser.cpp.
References ZONE::AddPolygon(), APPEND, SHAPE_POLY_SET::Append(), SHAPE_POLY_SET::COutline(), DIAGONAL_EDGE, ZONE::GetDefaultHatchPitch(), NETINFO_ITEM::GetNetname(), m_bboxXMax, m_bboxXMin, m_bboxYMax, m_bboxYMin, m_board, m_layers, m_outline, MapCopperLayer(), NEVER, SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_LINE_CHAIN::PointCount(), ResolveNetByIndex(), ZONE::SetAssignedPriority(), ZONE::SetBorderDisplayStyle(), ZONE::SetIslandRemovalMode(), ZONE::SetLayer(), ZONE::SetNet(), ZONE::SetZoneName(), ToKiCadCoord(), traceDiptraceIo, and UNDEFINED_LAYER.
Referenced by Parse().
|
private |
Definition at line 5554 of file diptrace_pcb_parser.cpp.
References APPEND, B_Cu, comp, F_Cu, NETINFO_ITEM::GetNetCode(), m_board, m_components, pad, PCB_VIA_T, ResolveNetByIndex(), THROUGH, ToKiCadCoord(), traceDiptraceIo, via, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by Parse().
|
private |
Definition at line 5449 of file diptrace_pcb_parser.cpp.
References std::abs(), APPEND, F_SilkS, DIPTRACE::DT_TEXT_OBJECT::layer, DIPTRACE::DT_TEXT_OBJECT::lineWidth, m_board, MapLayer(), pcbIUScale, text, DIPTRACE::DT_TEXT_OBJECT::text, ToKiCadCoord(), UNDEFINED_LAYER, DIPTRACE::DT_TEXT_OBJECT::x1, DIPTRACE::DT_TEXT_OBJECT::x2, DIPTRACE::DT_TEXT_OBJECT::y1, and DIPTRACE::DT_TEXT_OBJECT::y2.
Referenced by Parse().
|
private |
Definition at line 5646 of file diptrace_pcb_parser.cpp.
References APPEND, B_Cu, BLIND, BURIED, chain, CopperLayerToOrdinal(), DIPTRACE::DT_NET::defaultViaDrillDiam, DIPTRACE::DT_NET::defaultViaOuterDiam, DIPTRACE::DT_VIA_STYLE::drillDiameter, F_Cu, DIPTRACE::DT_TRACK_NODE::hasVia, In1_Cu, IsCopperLayer(), DIPTRACE::DT_TRACK_NODE::layer, DIPTRACE::DT_VIA_STYLE::layer1, DIPTRACE::DT_VIA_STYLE::layer2, m_board, m_trackChains, m_viaStyles, makeKey(), MapCopperLayer(), MapLayer(), operator==(), DIPTRACE::DT_VIA_STYLE::outerDiameter, pcbIUScale, ResolveDipTraceNetByIndex(), ResolveNetByIndex(), PCB_TRACK::SetEnd(), BOARD_CONNECTED_ITEM::SetLayer(), BOARD_CONNECTED_ITEM::SetNet(), PCB_TRACK::SetStart(), PCB_TRACK::SetWidth(), THROUGH, ToKiCadCoord(), traceDiptraceIo, UNDEFINED_LAYER, via, DIPTRACE::DT_TRACK_NODE::viaDrillDiam, DIPTRACE::DT_TRACK_NODE::viaOuterDiam, DIPTRACE::DT_TRACK_NODE::viaStyleIdx, DIPTRACE::DT_TRACK_NODE::width, DIPTRACE::DT_TRACK_NODE::x, and DIPTRACE::DT_TRACK_NODE::y.
Referenced by Parse().
|
private |
Definition at line 5980 of file diptrace_pcb_parser.cpp.
References ZONE::AddPolygon(), ALWAYS, ANGLE_45, ANGLE_90, APPEND, SHAPE_POLY_SET::Append(), AREA, SHAPE_POLY_SET::COutline(), DIAGONAL_EDGE, F_Cu, FULL, ZONE::GetDefaultHatchPitch(), m_board, m_kicadNetByDipTraceIndex, m_zones, MapCopperLayer(), MapLayer(), NEVER, SHAPE_POLY_SET::NewOutline(), pad, pcbIUScale, ResolveNetByIndex(), ZONE::SetAssignedPriority(), ZONE::SetBorderDisplayStyle(), ZONE::SetIslandRemovalMode(), ZONE::SetLayer(), ZONE::SetLocalClearance(), ZONE::SetMinIslandArea(), ZONE::SetMinThickness(), ZONE::SetNet(), ZONE::SetPadConnection(), ZONE::SetThermalReliefSpokeWidth(), SMD, THERMAL, THT_THERMAL, ToKiCadCoord(), traceDiptraceIo, UNDEFINED_LAYER, and ZONE_THICKNESS_MIN_VALUE_MM.
Referenced by Parse().
|
private |
Deterministically walk the component boundaries from the design-rules end, anchoring on each component's 37-byte tail (followed by a boundary core) instead of scanning the whole region for boundary patterns.
Returns (boundaryOffset, stringStart) per component, or an empty vector when the walk cannot be trusted (the caller then falls back to the scan).
Definition at line 1564 of file diptrace_pcb_parser.cpp.
References BOUNDARY_ALT, BOUNDARY_CORE_LEN, BOUNDARY_STD, m_postDesignRulesOffset, m_postLayersOffset, m_reader, m_version, next(), ReadInt3At(), and TryReadStringAt().
Referenced by FindAndParseComponents().
|
staticprivate |
Find all occurrences of a byte pattern within data[start:end].
Definition at line 900 of file diptrace_pcb_parser.cpp.
Referenced by FindAndParseComponents(), FindAndParseNets(), FindPadsInRegion(), and FindShapesInFontBlocks().
|
private |
Definition at line 1684 of file diptrace_pcb_parser.cpp.
References _, BOARD_SETTINGS_FONT_MARKER, BOUNDARY_ALT, BOUNDARY_CORE_LEN, BOUNDARY_STD, ClassifyStandaloneVia(), comp, delta, DumpComponentBinaryScan(), FieldWalkComponentBoundaries(), FindAllBoundaries(), FindMountHolesInRegion(), FindPadsInRegion(), FindShapesInRegion(), m_componentLocatorScans, m_components, m_componentUpperBound, m_postDesignRulesOffset, m_postLayersOffset, m_reader, m_version, NOT_FOUND, ParseComponentTail(), ParseSingleComponent(), traceDiptraceIo, and TryReadStringAt().
Referenced by Parse().
|
private |
Definition at line 3361 of file diptrace_pcb_parser.cpp.
References _, chain, FindAllBoundaries(), DIPTRACE::DT_NET::index, m_nets, m_reader, m_routingAnchorCacheBuilt, m_routingAnchorsByNet, m_sectionLocatorScans, m_trackChains, DIPTRACE::DT_NET::name, name, NET_SENTINEL, NET_SENTINEL_LEN, ParseNetRouting(), ReadInt3At(), DIPTRACE::DT_TRACK_NODE::routeFlag, DIPTRACE::DT_TRACK_NODE::routeMode, ShouldDumpNets(), THROW_IO_ERROR, traceDiptraceIo, DIPTRACE::DT_NET::traceWidth, and DIPTRACE::DT_TRACK_NODE::viaStyleIdx.
Referenced by ParsePostComponentSections().
|
private |
Definition at line 3183 of file diptrace_pcb_parser.cpp.
References DIPTRACE::INT3_BIAS, m_reader, NOT_FOUND, ParseTextRecords(), ReadColorPacked(), and TEXT_SECTION_ZEROS.
Referenced by ParsePostComponentSections().
|
private |
Definition at line 3976 of file diptrace_pcb_parser.cpp.
References _, DIPTRACE::DT_ZONE::boardClearance, DIPTRACE::DT_ZONE::cachedFillByteLen, DIPTRACE::DT_ZONE::cachedFillRecordCount, DIPTRACE::DT_ZONE::cachedFillRecords, clearance, DIPTRACE::DT_ZONE::clearance, DIPTRACE::DT_ZONE::connectionMode, DumpZoneGap(), DumpZoneHeader(), DumpZoneTail(), DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field0, DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field1, DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field2, DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field3, DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field4, DIPTRACE::DT_ZONE_CACHED_FILL_RECORD::field5, DIPTRACE::DT_ZONE::fillMode, DIPTRACE::INT4_BIAS, DIPTRACE::DT_ZONE::islandConnection, DIPTRACE::DT_ZONE::islandInternal, DIPTRACE::DT_ZONE::islandRegion, kv, DIPTRACE::DT_ZONE::layer, DIPTRACE::LEGACY_STRING_VERSION, DIPTRACE::DT_ZONE::lineSpacing, m_bboxXMax, m_bboxXMin, m_bboxYMax, m_bboxYMin, m_nets, m_outline, m_reader, m_sectionLocatorScans, m_version, m_zones, DIPTRACE::DT_ZONE::minimumArea, DIPTRACE::DT_ZONE::minWidth, DIPTRACE::DT_ZONE::netIndex, NOT_FOUND, DIPTRACE::DT_ZONE::outline, DIPTRACE::DT_ZONE::ratlineMode, DIPTRACE::DT_ZONE::rawFlag2, ReadInt3At(), ReadInt4At(), DIPTRACE::DT_ZONE::regionsCounted, DIPTRACE::DT_ZONE::regionsDone, DIPTRACE::DT_ZONE::separator, ShouldDumpZones(), DIPTRACE::DT_ZONE::smdSeparate, DIPTRACE::DT_ZONE::smdSpokeMode, DIPTRACE::DT_ZONE::smdSpokeWidth, DIPTRACE::DT_ZONE::spokeMode, DIPTRACE::DT_ZONE::spokeWidth, THROW_IO_ERROR, traceDiptraceIo, DIPTRACE::DT_ZONE::viaDirect, ZONE_FONT_PREAMBLE_TAIL, and DIPTRACE::DT_ZONE::zoneId.
Referenced by ParsePostComponentSections().
|
private |
Parse component-local mechanical holes (NPTH) from the post-pad region.
Definition at line 2566 of file diptrace_pcb_parser.cpp.
References COMPONENT_TAIL_SIZE, decodeMountHoleBlockAt(), FONT_BLOCK_SHAPE_VERSION, FP_CHAIN_MOUNT_HOLE_OFFSET, FP_CHAIN_SHAPE_COUNT_OFFSET, FP_CHAIN_SHAPE_DATA_OFFSET, FP_CHAIN_SHAPE_RECORD_SIZE, FP_SHAPE_COUNT_OFFSET, FP_SHAPE_DATA_OFFSET, FP_SHAPE_RECORD_SIZE_V37, FP_SHAPE_RECORD_SIZE_V45, DIPTRACE::DT_COMPONENT::holes, DIPTRACE::LEGACY_STRING_VERSION, m_reader, m_version, DIPTRACE::DT_COMPONENT::padRegionEnd, DIPTRACE::DT_COMPONENT::pads, ReadInt3At(), DIPTRACE::DT_COMPONENT::refdes, ShouldDumpComponentHeader(), and traceDiptraceIo.
Referenced by FindAndParseComponents().
|
private |
Search a component's data region for pad records using pad name anchors.
Definition at line 2198 of file diptrace_pcb_parser.cpp.
References std::abs(), DumpPadGap(), DumpPadPostBlock(), FindAllBoundaries(), DIPTRACE::DT_COMPONENT::headerEndOffset, DIPTRACE::LEGACY_STRING_VERSION, m_padLocatorScans, m_reader, m_version, pad, PAD_DIMENSIONS_SIZE, PAD_HEADER_PREAMBLE_ASCII, PAD_HEADER_PREAMBLE_UTF16, PAD_MAX_NET_INDEX, PAD_POLYGON_VERTEX_SIZE, PAD_POST_DIM_FIXED_SIZE, PAD_POST_DIM_HEADER, PAD_POST_DIM_TAIL, PAD_PRE_HEADER_SIZE, DIPTRACE::DT_COMPONENT::padRegionEnd, DIPTRACE::DT_COMPONENT::pads, DIPTRACE::DT_COMPONENT::patternName, ReadInt3At(), ReadInt4At(), StringFieldSize(), traceDiptraceIo, and TryReadStringAt().
Referenced by FindAndParseComponents().
|
private |
Parse shapes from chained fixed-size records used by some v46+ footprints.
Definition at line 2955 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_SHAPE_ARC, DIPTRACE::DT_SHAPE_LINE, FP_CHAIN_SHAPE_COUNT_OFFSET, FP_CHAIN_SHAPE_DATA_OFFSET, FP_CHAIN_SHAPE_RECORD_SIZE, FP_CHAIN_SHAPE_TYPE_OFFSET, FP_CHAIN_SHAPE_WIDTH_OFFSET, FP_CHAIN_SHAPE_X1_OFFSET, FP_CHAIN_SHAPE_X2_OFFSET, FP_CHAIN_SHAPE_X3_OFFSET, FP_CHAIN_SHAPE_Y1_OFFSET, FP_CHAIN_SHAPE_Y2_OFFSET, FP_CHAIN_SHAPE_Y3_OFFSET, FP_CHAIN_TYPE_ARC, FP_CHAIN_TYPE_LINE, FP_SHAPE_NORM_RANGE, DIPTRACE::DT_COMPONENT::layer, DIPTRACE::DT_FP_SHAPE::layer, m_reader, DIPTRACE::DT_FP_SHAPE::midX, DIPTRACE::DT_FP_SHAPE::midY, DIPTRACE::DT_COMPONENT::padRegionEnd, DIPTRACE::DT_COMPONENT::pads, ReadInt3At(), ReadInt4At(), DIPTRACE::DT_COMPONENT::shapes, DIPTRACE::DT_FP_SHAPE::type, DIPTRACE::DT_FP_SHAPE::width, DIPTRACE::DT_FP_SHAPE::x1, DIPTRACE::DT_FP_SHAPE::x2, DIPTRACE::DT_FP_SHAPE::y1, and DIPTRACE::DT_FP_SHAPE::y2.
Referenced by FindShapesInRegion().
|
private |
Parse shapes from per-layer font blocks (v46+ format).
Definition at line 2742 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_SHAPE_ARC, DIPTRACE::DT_SHAPE_CIRCLE, DIPTRACE::DT_SHAPE_FILLOBROUND, DIPTRACE::DT_SHAPE_LINE, DIPTRACE::DT_SHAPE_RECT, FindAllBoundaries(), FONT_BLOCK_FIXED_SIZE, FONT_BLOCK_HEADER_SIZE, FONT_BLOCK_TRAILER_SIZE, FONT_PREAMBLE_FIXED_SIZE, FONT_PREAMBLE_LABEL_OFFSET, FP_SHAPE_NORM_RANGE, DIPTRACE::DT_FP_SHAPE::layer, m_reader, m_shapeLocatorScans, DIPTRACE::DT_FP_SHAPE::midX, DIPTRACE::DT_FP_SHAPE::midY, DIPTRACE::DT_COMPONENT::padRegionEnd, ReadInt3At(), ReadInt4At(), DIPTRACE::DT_COMPONENT::shapes, TAHOMA_FONT_PATTERN, TAHOMA_FONT_PATTERN_LEN, DIPTRACE::DT_FP_SHAPE::type, DIPTRACE::DT_FP_SHAPE::width, DIPTRACE::DT_FP_SHAPE::x1, DIPTRACE::DT_FP_SHAPE::x2, DIPTRACE::DT_FP_SHAPE::y1, and DIPTRACE::DT_FP_SHAPE::y2.
Referenced by FindShapesInRegion().
|
private |
Parse footprint outline shapes from the region after pad data.
Definition at line 2651 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_COMPONENT::bboxHeight, DIPTRACE::DT_COMPONENT::bboxWidth, DIPTRACE::DT_SHAPE_ARC, DIPTRACE::DT_SHAPE_CIRCLE, DIPTRACE::DT_SHAPE_EMPTY, DIPTRACE::DT_SHAPE_END, DIPTRACE::DT_SHAPE_LINE, FindShapesInChainedBlocks(), FindShapesInFontBlocks(), FONT_BLOCK_SHAPE_VERSION, FP_SHAPE_COUNT_OFFSET, FP_SHAPE_DATA_OFFSET, FP_SHAPE_RECORD_SIZE_V37, FP_SHAPE_RECORD_SIZE_V45, DIPTRACE::LEGACY_STRING_VERSION, m_reader, m_version, DIPTRACE::DT_COMPONENT::padRegionEnd, DIPTRACE::DT_COMPONENT::pads, DIPTRACE::DT_COMPONENT::patternName, ReadInt3At(), ReadInt4At(), DIPTRACE::DT_COMPONENT::shapes, traceDiptraceIo, and DIPTRACE::DT_FP_SHAPE::type.
Referenced by FindAndParseComponents().
| wxString PCB_PARSER::GenerateDesignRules | ( | ) | const |
Build a KiCad custom design-rule (.kicad_dru) document for the per-zone DipTrace properties that have no native KiCad zone equivalent.
Covers zone-to-board-edge clearance (BoardClearance) and direct via connections (ViaDirect). Returns an empty string when no such rules apply. Must be called after Parse().
Definition at line 6212 of file diptrace_pcb_parser.cpp.
References FormatDouble2Str(), m_zones, pcbIUScale, ResolveNetByIndex(), and ToKiCadCoord().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and PCB_IO_DIPTRACE::LoadBoard().
|
private |
Definition at line 3834 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_PAD_REF::componentIndex, m_components, m_nets, pad, DIPTRACE::DT_PAD_REF::padIndex, and traceDiptraceIo.
Referenced by Parse().
|
private |
Definition at line 1105 of file diptrace_pcb_parser.cpp.
References B_Cu, F_Cu, In1_Cu, m_copperLayerOrdinalById, m_layers, and UNDEFINED_LAYER.
Referenced by ApplyBoardSettings(), CreatePlaneZones(), CreateTracksAndVias(), and CreateZones().
|
private |
Map a DipTrace layer index to a KiCad PCB_LAYER_ID.
Definition at line 1071 of file diptrace_pcb_parser.cpp.
References B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, Dwgs_User, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In1_Cu, and UNDEFINED_LAYER.
Referenced by ApplyBoardSettings(), CreateTextObject(), CreateTracksAndVias(), and CreateZones().
|
inline |
Definition at line 325 of file diptrace_pcb_parser.h.
References m_mountHoleLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Definition at line 323 of file diptrace_pcb_parser.h.
References m_padLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
| void PCB_PARSER::Parse | ( | ) |
Parse the file and populate the board. Throws IO_ERROR on failure.
Definition at line 947 of file diptrace_pcb_parser.cpp.
References _, ApplyBoardSettings(), ApplyPlacementAngles(), comp, CreateBoardOutline(), CreateFootprint(), CreateNets(), CreatePlaneZones(), CreateStandaloneVias(), CreateTextObject(), CreateTracksAndVias(), CreateZones(), FindAndParseComponents(), InferPadNetsFromRoutingRefs(), m_bboxXMax, m_bboxXMin, m_bboxYMax, m_bboxYMin, m_componentLocatorScans, m_components, m_mountHoleLocatorScans, m_nets, m_outline, m_padLocatorScans, m_postDesignRulesOffset, m_postLayersOffset, m_reader, m_sectionLocatorScans, m_shapeLocatorScans, m_textObjects, m_trackChains, m_version, m_zones, ParseBoardProperties(), ParseDesignRules(), ParseFontStyle(), ParseLayers(), ParseMagic(), ParseOutline(), ParsePostComponentSections(), ParsePostOutline(), text, THROW_IO_ERROR, and traceDiptraceIo.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and PCB_IO_DIPTRACE::LoadBoard().
|
private |
Definition at line 1187 of file diptrace_pcb_parser.cpp.
References DIPTRACE::LEGACY_STRING_VERSION, m_bboxXMax, m_bboxXMin, m_bboxYMax, m_bboxYMin, m_hasInlineVersion, m_reader, m_version, and traceDiptraceIo.
Referenced by Parse().
|
private |
Parse the 37-byte tail at the end of a component region to extract text positioning.
Definition at line 3052 of file diptrace_pcb_parser.cpp.
References std::abs(), BytesToHex(), COMPONENT_TAIL_PATTERN, COMPONENT_TAIL_PATTERN_LEN, COMPONENT_TAIL_SIZE, DumpComponentTail(), DIPTRACE::DT_COMPONENT::hasTailData, DIPTRACE::DT_COMPONENT::layer, m_reader, DIPTRACE::DT_COMPONENT::refdes, DIPTRACE::DT_COMPONENT::refdesVisible, DIPTRACE::DT_COMPONENT::refdesYOffset, ShouldDumpComponentHeader(), traceDiptraceIo, DIPTRACE::DT_COMPONENT::valueVisible, DIPTRACE::DT_COMPONENT::valueYOffset, and visibility.
Referenced by FindAndParseComponents().
|
private |
Definition at line 1432 of file diptrace_pcb_parser.cpp.
References _, DIPTRACE::DT_DESIGN_RULE::clearance, DIPTRACE::DT_VIA_STYLE::drillDiameter, DumpRulesetBlock(), EnvFlagEnabled(), DIPTRACE::DT_VIA_STYLE::layer1, DIPTRACE::DT_VIA_STYLE::layer2, m_designRules, m_reader, m_ruleNameCount, m_viaStyles, DIPTRACE::DT_DESIGN_RULE::name, DIPTRACE::DT_VIA_STYLE::name, name, DIPTRACE::DT_VIA_STYLE::outerDiameter, SkipInterRulesetTransition(), THROW_IO_ERROR, traceDiptraceIo, and DIPTRACE::DT_DESIGN_RULE::trackWidth.
Referenced by Parse().
|
private |
Definition at line 1285 of file diptrace_pcb_parser.cpp.
References DIPTRACE::LEGACY_STRING_VERSION, m_hasLegacyMagicLayout, m_reader, m_ruleNameCount, m_version, next(), pad, ParseImplicitPatternStyleGroup(), ParsePatternNameGroups(), and ParsePatternStyleGroups().
Referenced by Parse().
|
private |
Definition at line 1414 of file diptrace_pcb_parser.cpp.
References _, m_reader, m_ruleNameCount, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 1254 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_LAYER::color, DIPTRACE::DT_LAYER::fieldD, DIPTRACE::DT_LAYER::flag, DIPTRACE::DT_LAYER::index, m_copperLayerOrdinalById, m_layers, m_reader, DIPTRACE::DT_LAYER::name, DIPTRACE::DT_LAYER::planeNetIndex, ReadColorPacked(), and DIPTRACE::DT_LAYER::type.
Referenced by Parse().
|
private |
Definition at line 1144 of file diptrace_pcb_parser.cpp.
References _, m_hasInlineVersion, m_hasLegacyMagicLayout, m_reader, m_version, and THROW_IO_ERROR.
Referenced by Parse().
|
private |
Definition at line 3547 of file diptrace_pcb_parser.cpp.
References _, chain, CHAIN_HEADER, CHAIN_HEADER_LEN, DIPTRACE::DT_NET::defaultViaDrillDiam, DIPTRACE::DT_NET::defaultViaOuterDiam, DIPTRACE::DT_NET::index, DIPTRACE::INT3_BIAS, DIPTRACE::INT4_BIAS, m_components, m_reader, m_trackChains, DIPTRACE::DT_NET::name, NET_SENTINEL, NET_SENTINEL_LEN, DIPTRACE::DT_NET::padRefs, ReadInt3At(), ReadInt4At(), THROW_IO_ERROR, TRACK_NODE_SIZE, and DIPTRACE::DT_TRACK_NODE::x.
Referenced by FindAndParseNets().
|
private |
Definition at line 1220 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DT_VERTEX::arc, m_outline, m_reader, DIPTRACE::DT_VERTEX::x, and DIPTRACE::DT_VERTEX::y.
Referenced by Parse().
|
private |
Definition at line 1349 of file diptrace_pcb_parser.cpp.
References _, m_reader, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 1379 of file diptrace_pcb_parser.cpp.
References _, m_reader, m_ruleNameCount, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 3161 of file diptrace_pcb_parser.cpp.
References FindAndParseNets(), FindAndParseTextObjects(), FindAndParseZones(), m_componentUpperBound, m_reader, and NOT_FOUND.
Referenced by Parse().
|
private |
Definition at line 1237 of file diptrace_pcb_parser.cpp.
References m_reader.
Referenced by Parse().
|
private |
Definition at line 2067 of file diptrace_pcb_parser.cpp.
References _, DIPTRACE::DT_COMPONENT::bboxHeight, DIPTRACE::DT_COMPONENT::bboxWidth, DIPTRACE::DT_COMPONENT::displayName, DIPTRACE::DT_COMPONENT::drillHeightHint, DIPTRACE::DT_COMPONENT::drillWidthHint, DumpComponentHeader(), DumpComponentRawFields(), DIPTRACE::DT_COMPONENT::fieldA, DIPTRACE::DT_COMPONENT::fieldC, DIPTRACE::DT_COMPONENT::fieldD, DIPTRACE::DT_COMPONENT::fieldF, FindComponentRotation(), DIPTRACE::DT_COMPONENT::flags, DIPTRACE::DT_COMPONENT::hasPlacementQuarterTurns, DIPTRACE::DT_COMPONENT::headerEndOffset, DIPTRACE::DT_COMPONENT::isStandaloneVia, DIPTRACE::DT_COMPONENT::layer, DIPTRACE::DT_COMPONENT::libraryPath, m_reader, DIPTRACE::DT_COMPONENT::padHeightHint, DIPTRACE::DT_COMPONENT::padWidthHint, DIPTRACE::DT_COMPONENT::patternName, DIPTRACE::DT_COMPONENT::placementQuarterTurns, DIPTRACE::DT_COMPONENT::positionX, DIPTRACE::DT_COMPONENT::positionY, DIPTRACE::DT_COMPONENT::refdes, DIPTRACE::DT_COMPONENT::rotation, THROW_IO_ERROR, and DIPTRACE::DT_COMPONENT::value.
Referenced by FindAndParseComponents().
|
private |
Definition at line 3292 of file diptrace_pcb_parser.cpp.
References _, m_reader, m_textObjects, ReadColorPacked(), text, THROW_IO_ERROR, and IO_ERROR::What().
Referenced by FindAndParseTextObjects().
|
private |
Definition at line 5498 of file diptrace_pcb_parser.cpp.
References m_dipTraceNetByIndex.
Referenced by CreateTracksAndVias().
|
private |
Resolve a DipTrace net index to the corresponding KiCad net object.
Definition at line 5484 of file diptrace_pcb_parser.cpp.
References m_kicadNetByDipTraceIndex.
Referenced by CreateFootprint(), CreatePlaneZones(), CreateStandaloneVias(), CreateTracksAndVias(), CreateZones(), and GenerateDesignRules().
|
inline |
Number of objects or sections that were located by byte-pattern scanning rather than a deterministic field-derived offset during the last Parse().
Zero means the decode was fully deterministic; the remaining pattern scanners act only as recovery fallbacks. Mirrors the schematic importer's ComponentBoundaryScanCount() invariant.
Definition at line 316 of file diptrace_pcb_parser.h.
References m_componentLocatorScans, m_mountHoleLocatorScans, m_padLocatorScans, m_sectionLocatorScans, and m_shapeLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Definition at line 326 of file diptrace_pcb_parser.h.
References m_sectionLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Definition at line 324 of file diptrace_pcb_parser.h.
References m_shapeLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
private |
Read an inter-ruleset transition block.
Definition at line 1527 of file diptrace_pcb_parser.cpp.
References _, actual, DIPTRACE::LEGACY_STRING_VERSION, m_reader, m_version, next(), and THROW_IO_ERROR.
Referenced by ParseDesignRules().
|
staticprivate |
Convert a DipTrace angle value to degrees (tenths of degree).
Definition at line 1134 of file diptrace_pcb_parser.cpp.
References DIPTRACE::DIPTRACE_ANGLE_TO_DEG.
Referenced by CreateFootprint().
|
staticprivate |
Convert a DipTrace coordinate (DipTrace units) to KiCad internal units (nm).
Definition at line 1128 of file diptrace_pcb_parser.cpp.
Referenced by ApplyBoardSettings(), CreateBoardOutline(), CreateFootprint(), CreatePlaneZones(), CreateStandaloneVias(), CreateTextObject(), CreateTracksAndVias(), CreateZones(), and GenerateDesignRules().
|
staticprivate |
Try to read a string at a given raw data position.
Definition at line 818 of file diptrace_pcb_parser.cpp.
References DIPTRACE::INT3_BIAS, DIPTRACE::LEGACY_STRING_VERSION, and result.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), and FindPadsInRegion().
|
private |
Definition at line 479 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 477 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 480 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 478 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 453 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreateBoardOutline(), CreateFootprint(), CreateNets(), CreatePlaneZones(), CreateStandaloneVias(), CreateTextObject(), CreateTracksAndVias(), CreateZones(), and PCB_PARSER().
|
private |
Definition at line 492 of file diptrace_pcb_parser.h.
Referenced by ComponentLocatorScans(), FindAndParseComponents(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 463 of file diptrace_pcb_parser.h.
Referenced by ApplyPlacementAngles(), CreateStandaloneVias(), FindAndParseComponents(), InferPadNetsFromRoutingRefs(), Parse(), and ParseNetRouting().
|
private |
Definition at line 486 of file diptrace_pcb_parser.h.
Referenced by FindAndParseComponents(), and ParsePostComponentSections().
|
private |
Definition at line 468 of file diptrace_pcb_parser.h.
Referenced by MapCopperLayer(), and ParseLayers().
|
private |
Definition at line 462 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), and ParseDesignRules().
|
private |
Definition at line 474 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), and ResolveDipTraceNetByIndex().
|
private |
Definition at line 455 of file diptrace_pcb_parser.h.
Referenced by ParseBoardProperties(), ParseMagic(), and PCB_PARSER().
|
private |
Definition at line 456 of file diptrace_pcb_parser.h.
Referenced by ParseFontStyle(), ParseMagic(), and PCB_PARSER().
|
private |
Definition at line 473 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), CreateZones(), and ResolveNetByIndex().
|
private |
Definition at line 460 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreatePlaneZones(), MapCopperLayer(), and ParseLayers().
|
private |
Definition at line 495 of file diptrace_pcb_parser.h.
Referenced by MountHoleLocatorScans(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 465 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), FindAndParseNets(), FindAndParseZones(), InferPadNetsFromRoutingRefs(), and Parse().
|
private |
Definition at line 459 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseOutline().
|
private |
Definition at line 493 of file diptrace_pcb_parser.h.
Referenced by FindPadsInRegion(), PadLocatorScans(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 485 of file diptrace_pcb_parser.h.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), and Parse().
|
private |
Definition at line 484 of file diptrace_pcb_parser.h.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), and Parse().
|
private |
Definition at line 452 of file diptrace_pcb_parser.h.
Referenced by ApplyPlacementAngles(), FieldWalkComponentBoundaries(), FindAndParseComponents(), FindAndParseNets(), FindAndParseTextObjects(), FindAndParseZones(), FindMountHolesInRegion(), FindPadsInRegion(), FindShapesInChainedBlocks(), FindShapesInFontBlocks(), FindShapesInRegion(), Parse(), ParseBoardProperties(), ParseComponentTail(), ParseDesignRules(), ParseFontStyle(), ParseImplicitPatternStyleGroup(), ParseLayers(), ParseMagic(), ParseNetRouting(), ParseOutline(), ParsePatternNameGroups(), ParsePatternStyleGroups(), ParsePostComponentSections(), ParsePostOutline(), ParseSingleComponent(), ParseTextRecords(), PCB_PARSER(), and SkipInterRulesetTransition().
|
private |
Definition at line 470 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), and FindAndParseNets().
|
private |
Definition at line 469 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), and FindAndParseNets().
|
private |
Definition at line 483 of file diptrace_pcb_parser.h.
Referenced by ParseDesignRules(), ParseFontStyle(), ParseImplicitPatternStyleGroup(), and ParsePatternStyleGroups().
|
private |
Definition at line 496 of file diptrace_pcb_parser.h.
Referenced by FindAndParseNets(), FindAndParseZones(), Parse(), ScanLocatorUseCount(), and SectionLocatorScans().
|
private |
Definition at line 494 of file diptrace_pcb_parser.h.
Referenced by FindShapesInFontBlocks(), Parse(), ScanLocatorUseCount(), and ShapeLocatorScans().
|
private |
Definition at line 464 of file diptrace_pcb_parser.h.
Referenced by Parse(), and ParseTextRecords().
|
private |
Definition at line 466 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), CreateTracksAndVias(), FindAndParseNets(), Parse(), and ParseNetRouting().
|
private |
Definition at line 454 of file diptrace_pcb_parser.h.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), FindAndParseZones(), FindMountHolesInRegion(), FindPadsInRegion(), FindShapesInRegion(), Parse(), ParseBoardProperties(), ParseFontStyle(), ParseMagic(), PCB_PARSER(), and SkipInterRulesetTransition().
|
private |
Definition at line 461 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreateTracksAndVias(), and ParseDesignRules().
|
private |
Definition at line 467 of file diptrace_pcb_parser.h.
Referenced by CreateZones(), FindAndParseZones(), GenerateDesignRules(), and Parse().