KiCad PCB EDA Suite
PAD_DESC Struct Reference

Public Member Functions

 PAD_DESC ()
 

Detailed Description

Definition at line 1331 of file class_pad.cpp.

Constructor & Destructor Documentation

◆ PAD_DESC()

PAD_DESC::PAD_DESC ( )
inline

Definition at line 1333 of file class_pad.cpp.

1334  {
1336  .Map( PAD_SHAPE_CIRCLE, _( "Circle" ) )
1337  .Map( PAD_SHAPE_RECT, _( "Rectangle" ) )
1338  .Map( PAD_SHAPE_OVAL, _( "Oval" ) )
1339  .Map( PAD_SHAPE_TRAPEZOID, _( "Trapezoid" ) )
1340  .Map( PAD_SHAPE_ROUNDRECT, _( "Rounded rectangle" ) )
1341  .Map( PAD_SHAPE_CHAMFERED_RECT, _( "Chamfered rectangle" ) )
1342  .Map( PAD_SHAPE_CUSTOM, _( "Custom" ) );
1343 
1345  .Map( PAD_PROP_NONE, _( "None" ) )
1346  .Map( PAD_PROP_BGA, _( "BGA pad" ) )
1347  .Map( PAD_PROP_FIDUCIAL_GLBL, _( "Fiducial, global to board" ) )
1348  .Map( PAD_PROP_FIDUCIAL_LOCAL, _( "Fiducial, local to footprint" ) )
1349  .Map( PAD_PROP_TESTPOINT, _( "Test point pad" ) )
1350  .Map( PAD_PROP_HEATSINK, _( "Heatsink pad" ) )
1351  .Map( PAD_PROP_CASTELLATED, _( "Castellated pad" ) );
1352 
1354  REGISTER_TYPE( D_PAD );
1356 
1357  auto shape = new PROPERTY_ENUM<D_PAD, PAD_SHAPE_T>( _( "Shape" ),
1359  propMgr.AddProperty( shape );
1360 
1361  propMgr.AddProperty( new PROPERTY<D_PAD, wxString>( _( "Name" ),
1363  propMgr.AddProperty( new PROPERTY<D_PAD, double>( _( "Orientation" ),
1366  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Pad To Die Length" ),
1369  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Local Soldermask Margin" ),
1372  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Local Solderpaste Margin" ),
1375  propMgr.AddProperty( new PROPERTY<D_PAD, double>( _( "Local Solderpaste Margin Ratio" ),
1377  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Thermal Relief Spoke Width" ),
1380  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Thermal Relief" ),
1383  propMgr.AddProperty( new PROPERTY_ENUM<D_PAD, PAD_PROP_T>( _( "Fabrication Property" ),
1385 
1386  auto roundRadiusRatio = new PROPERTY<D_PAD, double>( _( "Round Radius Ratio" ),
1388  roundRadiusRatio->SetAvailableFunc(
1389  [=]( INSPECTABLE* aItem ) -> bool
1390  {
1391  return aItem->Get( shape ) == PAD_SHAPE_ROUNDRECT;
1392  } );
1393  propMgr.AddProperty( roundRadiusRatio );
1394 
1395  propMgr.AddProperty( new PROPERTY<D_PAD, int>( _( "Local Clearance" ),
1398  // TODO delta, size, drill size, dirill shape offset, layerset, zone connection
1399  }
Display value expressed in degrees.
Definition: property.h:48
int GetLocalSolderMaskMargin() const
Definition: class_pad.h:346
static PROPERTY_MANAGER & Instance()
Definition: property_mgr.h:61
#define TYPE_HASH(x)
Macro to generate unique identifier for a type
Definition: property.h:53
no special fabrication property
Definition: pad_shapes.h:97
a fiducial (usually a smd) for the full board
Definition: pad_shapes.h:99
double GetOrientationDegrees() const
Definition: class_pad.h:322
int GetPadToDieLength() const
Definition: class_pad.h:344
static ENUM_MAP< T > & Instance()
Definition: property.h:517
Smd pad, used in BGA footprints.
Definition: pad_shapes.h:98
a pad used as heat sink, usually in SMD footprints
Definition: pad_shapes.h:102
void SetRoundRectRadiusRatio(double aRadiusScale)
has meaning only for rounded rect pads Set the ratio between the smaller X or Y size and the rounded ...
Definition: class_pad.cpp:239
int GetThermalGap() const
Definition: class_pad.h:463
BOARD_CONNECTED_ITEM is a base class derived from BOARD_ITEM for items that can be connected and have...
int GetLocalClearance() const
Definition: class_pad.h:350
#define REGISTER_TYPE(x)
Helper macro to map type hashes to names
Definition: property_mgr.h:244
a pad with a castellated through hole
Definition: pad_shapes.h:103
void SetThermalSpokeWidth(int aWidth)
Set the width of the thermal spokes connecting the pad to a zone.
Definition: class_pad.h:454
Display value expressed in distance units (mm/inch)
Definition: property.h:47
void SetName(const wxString &aName)
Set the pad name (sometimes called pad number, although it can be an array reference like AA12).
Definition: class_pad.h:131
wxAny Get(PROPERTY_BASE *aProperty)
Definition: inspectable.h:84
void InheritsAfter(TYPE_ID aDerived, TYPE_ID aBase)
Declares an inheritance relationship between types.
const wxString & GetName() const
Definition: class_pad.h:132
void SetOrientationDegrees(double aOrientation)
Set orientation in degrees.
Definition: class_pad.h:314
PAD_PROP_T GetProperty() const
Definition: class_pad.h:337
void SetPadToDieLength(int aLength)
Definition: class_pad.h:343
Class that other classes need to inherit from, in order to be inspectable.
Definition: inspectable.h:33
void SetLocalClearance(int aClearance)
Definition: class_pad.h:351
void SetLocalSolderPasteMarginRatio(double aRatio)
Definition: class_pad.h:357
a fiducial (usually a smd) local to the parent footprint
Definition: pad_shapes.h:100
void SetLocalSolderMaskMargin(int aMargin)
Definition: class_pad.h:347
#define _(s)
Definition: 3d_actions.cpp:33
void AddProperty(PROPERTY_BASE *aProperty)
Registers a property.
void SetShape(PAD_SHAPE_T aShape)
Set the new shape of this pad.
Definition: class_pad.h:148
double GetRoundRectRadiusRatio() const
Definition: class_pad.h:486
Provides class metadata.
Definition: property_mgr.h:58
void SetLocalSolderPasteMargin(int aMargin)
Definition: class_pad.h:354
PAD_SHAPE_T GetShape() const
Definition: class_pad.h:157
void SetProperty(PAD_PROP_T aProperty)
Definition: class_pad.cpp:509
int GetLocalSolderPasteMargin() const
Definition: class_pad.h:353
int GetThermalSpokeWidth() const
Definition: class_pad.h:455
a test point pad
Definition: pad_shapes.h:101
void SetThermalGap(int aGap)
Definition: class_pad.h:462
double GetLocalSolderPasteMarginRatio() const
Definition: class_pad.h:356

References _, PROPERTY_MANAGER::AddProperty(), DEGREE, DISTANCE, INSPECTABLE::Get(), D_PAD::GetLocalClearance(), D_PAD::GetLocalSolderMaskMargin(), D_PAD::GetLocalSolderPasteMargin(), D_PAD::GetLocalSolderPasteMarginRatio(), D_PAD::GetName(), D_PAD::GetOrientationDegrees(), D_PAD::GetPadToDieLength(), D_PAD::GetProperty(), D_PAD::GetRoundRectRadiusRatio(), D_PAD::GetShape(), D_PAD::GetThermalGap(), D_PAD::GetThermalSpokeWidth(), PROPERTY_MANAGER::InheritsAfter(), PROPERTY_MANAGER::Instance(), ENUM_MAP< T >::Instance(), PAD_PROP_BGA, PAD_PROP_CASTELLATED, PAD_PROP_FIDUCIAL_GLBL, PAD_PROP_FIDUCIAL_LOCAL, PAD_PROP_HEATSINK, PAD_PROP_NONE, PAD_PROP_TESTPOINT, PAD_SHAPE_CHAMFERED_RECT, PAD_SHAPE_CIRCLE, PAD_SHAPE_CUSTOM, PAD_SHAPE_OVAL, PAD_SHAPE_RECT, PAD_SHAPE_ROUNDRECT, PAD_SHAPE_TRAPEZOID, REGISTER_TYPE, D_PAD::SetLocalClearance(), D_PAD::SetLocalSolderMaskMargin(), D_PAD::SetLocalSolderPasteMargin(), D_PAD::SetLocalSolderPasteMarginRatio(), D_PAD::SetName(), D_PAD::SetOrientationDegrees(), D_PAD::SetPadToDieLength(), D_PAD::SetProperty(), D_PAD::SetRoundRectRadiusRatio(), D_PAD::SetShape(), D_PAD::SetThermalGap(), D_PAD::SetThermalSpokeWidth(), and TYPE_HASH.


The documentation for this struct was generated from the following file: