|
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 291 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 937 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 947 of file diptrace_pcb_parser.cpp.
|
private |
Definition at line 4768 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 1930 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 2047 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 318 of file diptrace_pcb_parser.h.
References m_componentLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
private |
Definition at line 4834 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, PCB_SHAPE::SetArcGeometry(), PCB_SHAPE::SetEnd(), PCB_SHAPE::SetLayer(), PCB_SHAPE::SetStart(), PCB_SHAPE::SetStroke(), SOLID, ToKiCadCoord(), v1, and v2.
Referenced by Parse().
|
private |
Definition at line 5003 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, PCB_SHAPE::SetArcGeometry(), PAD::SetAttribute(), EDA_SHAPE::SetCenter(), PAD::SetDrillShape(), PAD::SetDrillSize(), PCB_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(), PAD::SetShape(), PCB_SHAPE::SetShape(), PAD::SetSize(), PCB_SHAPE::SetStart(), FOOTPRINT::SetValue(), EDA_TEXT::SetVisible(), PCB_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 5491 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 6114 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 5533 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 5426 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 5625 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 5958 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 1572 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 905 of file diptrace_pcb_parser.cpp.
Referenced by FindAndParseComponents(), FindAndParseNets(), FindPadsInRegion(), and FindShapesInFontBlocks().
|
private |
Definition at line 1692 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 3353 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 3181 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 3965 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 2565 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 2201 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 2953 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 2740 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 2650 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 6190 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 3823 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 1110 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 1076 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 321 of file diptrace_pcb_parser.h.
References m_mountHoleLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Definition at line 319 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 952 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 1192 of file diptrace_pcb_parser.cpp.
References 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 3050 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 1441 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 1295 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 1423 of file diptrace_pcb_parser.cpp.
References _, m_reader, m_ruleNameCount, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 1258 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(), THROW_IO_ERROR, and DIPTRACE::DT_LAYER::type.
Referenced by Parse().
|
private |
Definition at line 1149 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 3539 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 1217 of file diptrace_pcb_parser.cpp.
References _, DIPTRACE::DT_VERTEX::arc, m_outline, m_reader, THROW_IO_ERROR, DIPTRACE::DT_VERTEX::x, and DIPTRACE::DT_VERTEX::y.
Referenced by Parse().
|
private |
Definition at line 1358 of file diptrace_pcb_parser.cpp.
References _, m_reader, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 1388 of file diptrace_pcb_parser.cpp.
References _, m_reader, m_ruleNameCount, and THROW_IO_ERROR.
Referenced by ParseFontStyle().
|
private |
Definition at line 3159 of file diptrace_pcb_parser.cpp.
References FindAndParseNets(), FindAndParseTextObjects(), FindAndParseZones(), m_componentUpperBound, m_reader, and NOT_FOUND.
Referenced by Parse().
|
private |
Definition at line 1241 of file diptrace_pcb_parser.cpp.
References m_reader.
Referenced by Parse().
|
private |
Definition at line 2070 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 3290 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 5477 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 5463 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 312 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 322 of file diptrace_pcb_parser.h.
References m_sectionLocatorScans.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Definition at line 320 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 1535 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 1139 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 1133 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 823 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 475 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 473 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 476 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 474 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseBoardProperties().
|
private |
Definition at line 449 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreateBoardOutline(), CreateFootprint(), CreateNets(), CreatePlaneZones(), CreateStandaloneVias(), CreateTextObject(), CreateTracksAndVias(), CreateZones(), and PCB_PARSER().
|
private |
Definition at line 488 of file diptrace_pcb_parser.h.
Referenced by ComponentLocatorScans(), FindAndParseComponents(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 459 of file diptrace_pcb_parser.h.
Referenced by ApplyPlacementAngles(), CreateStandaloneVias(), FindAndParseComponents(), InferPadNetsFromRoutingRefs(), Parse(), and ParseNetRouting().
|
private |
Definition at line 482 of file diptrace_pcb_parser.h.
Referenced by FindAndParseComponents(), and ParsePostComponentSections().
|
private |
Definition at line 464 of file diptrace_pcb_parser.h.
Referenced by MapCopperLayer(), and ParseLayers().
|
private |
Definition at line 458 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), and ParseDesignRules().
|
private |
Definition at line 470 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), and ResolveDipTraceNetByIndex().
|
private |
Definition at line 451 of file diptrace_pcb_parser.h.
Referenced by ParseBoardProperties(), ParseMagic(), and PCB_PARSER().
|
private |
Definition at line 452 of file diptrace_pcb_parser.h.
Referenced by ParseFontStyle(), ParseMagic(), and PCB_PARSER().
|
private |
Definition at line 469 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), CreateZones(), and ResolveNetByIndex().
|
private |
Definition at line 456 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreatePlaneZones(), MapCopperLayer(), and ParseLayers().
|
private |
Definition at line 491 of file diptrace_pcb_parser.h.
Referenced by MountHoleLocatorScans(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 461 of file diptrace_pcb_parser.h.
Referenced by CreateNets(), FindAndParseNets(), FindAndParseZones(), InferPadNetsFromRoutingRefs(), and Parse().
|
private |
Definition at line 455 of file diptrace_pcb_parser.h.
Referenced by CreateBoardOutline(), CreatePlaneZones(), FindAndParseZones(), Parse(), and ParseOutline().
|
private |
Definition at line 489 of file diptrace_pcb_parser.h.
Referenced by FindPadsInRegion(), PadLocatorScans(), Parse(), and ScanLocatorUseCount().
|
private |
Definition at line 481 of file diptrace_pcb_parser.h.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), and Parse().
|
private |
Definition at line 480 of file diptrace_pcb_parser.h.
Referenced by FieldWalkComponentBoundaries(), FindAndParseComponents(), and Parse().
|
private |
Definition at line 448 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 466 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), and FindAndParseNets().
|
private |
Definition at line 465 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), and FindAndParseNets().
|
private |
Definition at line 479 of file diptrace_pcb_parser.h.
Referenced by ParseDesignRules(), ParseFontStyle(), ParseImplicitPatternStyleGroup(), and ParsePatternStyleGroups().
|
private |
Definition at line 492 of file diptrace_pcb_parser.h.
Referenced by FindAndParseNets(), FindAndParseZones(), Parse(), ScanLocatorUseCount(), and SectionLocatorScans().
|
private |
Definition at line 490 of file diptrace_pcb_parser.h.
Referenced by FindShapesInFontBlocks(), Parse(), ScanLocatorUseCount(), and ShapeLocatorScans().
|
private |
Definition at line 460 of file diptrace_pcb_parser.h.
Referenced by Parse(), and ParseTextRecords().
|
private |
Definition at line 462 of file diptrace_pcb_parser.h.
Referenced by CreateFootprint(), CreateTracksAndVias(), FindAndParseNets(), Parse(), and ParseNetRouting().
|
private |
Definition at line 450 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 457 of file diptrace_pcb_parser.h.
Referenced by ApplyBoardSettings(), CreateTracksAndVias(), and ParseDesignRules().
|
private |
Definition at line 463 of file diptrace_pcb_parser.h.
Referenced by CreateZones(), FindAndParseZones(), GenerateDesignRules(), and Parse().