KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PADS_IO Namespace Reference

Classes

struct  ARC
 Arc definition using center point, radius, and angles. More...
 
struct  ARC_POINT
 A point that may be either a line endpoint or an arc segment. More...
 
struct  ATTRIBUTE
 
class  BINARY_PARSER
 Parser for PADS binary PCB file format (.pcb). More...
 
struct  BOARD_ITEM
 
struct  CLUSTER
 A cluster of related route segments that should be grouped together. More...
 
struct  COPPER_SHAPE
 A copper shape from the LINES section (type=COPPER). More...
 
struct  DECAL_ITEM
 
struct  DECAL_PAD
 
struct  DESIGN_RULES
 Design rule definitions from PCB section. More...
 
struct  DIFF_PAIR_DEF
 Differential pair definition. More...
 
struct  DIMENSION
 A dimension annotation for measurement display. More...
 
struct  FILE_HEADER
 
struct  GATE_DEF
 Gate definition for gate-swappable parts. More...
 
struct  GATE_PIN
 Pin definition within a gate. More...
 
struct  GRAPHIC_LINE
 A 2D graphic line/shape from the LINES section (type=LINES). More...
 
struct  JUMPER_DEF
 Jumper definition from JUMPER section. More...
 
struct  JUMPER_MARKER
 Jumper endpoint marker in a route. More...
 
struct  KEEPOUT
 A keepout area definition. More...
 
struct  LAYER_INFO
 
struct  LINE
 
struct  NET
 
struct  NET_CLASS_DEF
 Net class definition with routing constraints. More...
 
struct  NET_PIN
 
struct  PAD_STACK_LAYER
 
struct  PARAMETERS
 
class  PARSER
 
struct  PART
 
struct  PART_DECAL
 
struct  PART_TYPE
 
struct  POINT
 
struct  POLYLINE
 A polyline that may contain arc segments. More...
 
struct  POUR
 
struct  REUSE_BLOCK
 A reuse block definition containing parts and routes that can be instantiated. More...
 
struct  REUSE_INSTANCE
 
struct  REUSE_NET
 A reuse block instance placement. More...
 
struct  ROUTE
 
struct  SIGPIN
 Standard signal pin definition (power, ground, etc.) More...
 
struct  TEARDROP
 Teardrop parameters for a route point. More...
 
struct  TERMINAL
 
struct  TEST_POINT
 A test point definition for manufacturing/testing access. More...
 
struct  TEXT
 
struct  TRACK
 
struct  VIA
 
struct  VIA_DEF
 

Enumerations

enum class  UNIT_TYPE { MILS , METRIC , INCHES }
 
enum class  PADS_FILE_TYPE {
  PCB , LIB_LINE , LIB_SCH_DECAL , LIB_PCB_DECAL ,
  LIB_PART_TYPE
}
 File header information from PADS header line. More...
 
enum class  VIA_TYPE { THROUGH , BLIND , BURIED , MICROVIA }
 
enum class  POUR_STYLE { SOLID , HATCHED , VOIDOUT }
 Pour style types from PADS piece types. More...
 
enum class  THERMAL_TYPE { NONE , PAD , VIA }
 Thermal relief type for pad/via connections. More...
 
enum class  PIN_ELEC_TYPE {
  UNDEFINED , SOURCE , BIDIRECTIONAL , OPEN_COLLECTOR ,
  TRISTATE , LOAD , TERMINATOR , POWER ,
  GROUND
}
 Pin type classification for gate definitions. More...
 
enum class  LINE_STYLE {
  SOLID = 0 , DASHED = 1 , DOTTED = 2 , DASH_DOTTED = 3 ,
  DASH_DOUBLE_DOTTED = 4
}
 Line style enumeration for 2D graphics. More...
 
enum class  PADS_LAYER_FUNCTION {
  UNKNOWN , ROUTING , PLANE , MIXED ,
  UNASSIGNED , SOLDER_MASK , PASTE_MASK , SILK_SCREEN ,
  ASSEMBLY , DOCUMENTATION , DRILL
}
 Layer types from PADS LAYER_TYPE field. More...
 
enum class  KEEPOUT_TYPE {
  ALL , ROUTE , VIA , COPPER ,
  PLACEMENT
}
 Keepout types in PADS. More...
 

Functions

static std::vector< std::string > expandShortcutPattern (const std::string &aPattern)
 Expand a shortcut format string like "PRE{n1-n2}" into individual names.
 

Variables

static const uint8_t FOOTER_GUID [] = "{2FE18320-6448-11d1-A412-000000000000}"
 
static const std::map< uint8_t, std::string > PAD_SHAPE_NAMES
 

Enumeration Type Documentation

◆ KEEPOUT_TYPE

enum class PADS_IO::KEEPOUT_TYPE
strong

Keepout types in PADS.

Enumerator
ALL 

All objects.

ROUTE 

Routing keepout (traces)

VIA 

Via keepout.

COPPER 

Copper pour keepout.

PLACEMENT 

Component placement keepout.

Definition at line 687 of file pads_parser.h.

◆ LINE_STYLE

enum class PADS_IO::LINE_STYLE
strong

Line style enumeration for 2D graphics.

Enumerator
SOLID 
DASHED 
DOTTED 
DASH_DOTTED 
DASH_DOUBLE_DOTTED 

Definition at line 517 of file pads_parser.h.

◆ PADS_FILE_TYPE

enum class PADS_IO::PADS_FILE_TYPE
strong

File header information from PADS header line.

PADS file types (PCB design or library).

Enumerator
PCB 

PCB design file (POWERPCB, PADS-LAYOUT, etc.)

LIB_LINE 

Library line items (drafting)

LIB_SCH_DECAL 

Library schematic decals.

LIB_PCB_DECAL 

Library PCB decals (footprints)

LIB_PART_TYPE 

Library part types.

Definition at line 89 of file pads_parser.h.

◆ PADS_LAYER_FUNCTION

enum class PADS_IO::PADS_LAYER_FUNCTION
strong

Layer types from PADS LAYER_TYPE field.

Enumerator
UNKNOWN 
ROUTING 

Copper routing layer.

PLANE 

Power/ground plane.

MIXED 

Mixed signal/plane.

UNASSIGNED 

Unassigned layer.

SOLDER_MASK 

Solder mask.

PASTE_MASK 

Solder paste mask.

SILK_SCREEN 

Silkscreen/legend.

ASSEMBLY 

Assembly drawing.

DOCUMENTATION 

Documentation layer.

DRILL 

Drill drawing.

Definition at line 582 of file pads_parser.h.

◆ PIN_ELEC_TYPE

enum class PADS_IO::PIN_ELEC_TYPE
strong

Pin type classification for gate definitions.

Enumerator
UNDEFINED 

U - Undefined.

SOURCE 

S - Source pin.

BIDIRECTIONAL 

B - Bidirectional pin.

OPEN_COLLECTOR 

C - Open collector or or-tieable source.

TRISTATE 

T - Tri-state pin.

LOAD 

L - Load pin.

TERMINATOR 

Z - Terminator pin.

POWER 

P - Power pin.

GROUND 

G - Ground pin.

Definition at line 434 of file pads_parser.h.

◆ POUR_STYLE

enum class PADS_IO::POUR_STYLE
strong

Pour style types from PADS piece types.

Enumerator
SOLID 

Solid filled pour (POUROUT, POLY)

HATCHED 

Hatched pour (HATOUT)

VOIDOUT 

Void/empty region (VOIDOUT)

Definition at line 344 of file pads_parser.h.

◆ THERMAL_TYPE

enum class PADS_IO::THERMAL_TYPE
strong

Thermal relief type for pad/via connections.

Enumerator
NONE 

No thermal relief defined.

PAD 

Pad thermal relief (PADTHERM)

VIA 

Via thermal relief (VIATHERM)

Definition at line 354 of file pads_parser.h.

◆ UNIT_TYPE

enum class PADS_IO::UNIT_TYPE
strong
Enumerator
MILS 
METRIC 
INCHES 

Definition at line 37 of file pads_parser.h.

◆ VIA_TYPE

enum class PADS_IO::VIA_TYPE
strong
Enumerator
THROUGH 

Via spans all copper layers.

BLIND 

Via starts at top or bottom and ends at inner layer.

BURIED 

Via spans only inner layers.

MICROVIA 

Single-layer blind via (typically HDI)

Definition at line 312 of file pads_parser.h.

Function Documentation

◆ expandShortcutPattern()

static std::vector< std::string > PADS_IO::expandShortcutPattern ( const std::string & aPattern)
static

Expand a shortcut format string like "PRE{n1-n2}" into individual names.

Format: PREFIX{start-end} expands to PREFIX+start, PREFIX+(start+1), ..., PREFIX+end Example: "C{2-5}" expands to ["C2", "C3", "C4", "C5"]

Parameters
aPatternThe pattern string to expand
Returns
Vector of expanded names, or single-element vector with original if not a pattern

Definition at line 47 of file pads_parser.cpp.

References std::abs(), end, PADS_COMMON::ParseInt(), and result.

Referenced by PADS_IO::PARSER::parseSectionPARTS().

Variable Documentation

◆ FOOTER_GUID

const uint8_t PADS_IO::FOOTER_GUID[] = "{2FE18320-6448-11d1-A412-000000000000}"
static

Definition at line 39 of file pads_binary_parser.cpp.

Referenced by PADS_IO::BINARY_PARSER::parseFooter().

◆ PAD_SHAPE_NAMES

const std::map<uint8_t, std::string> PADS_IO::PAD_SHAPE_NAMES
static
Initial value:
= {
{ 0x01, "RF" },
{ 0x02, "R" },
{ 0x03, "S" },
{ 0x04, "OF" },
}

Definition at line 42 of file pads_binary_parser.cpp.

Referenced by PADS_IO::BINARY_PARSER::parsePadStacks().