KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pad_utils.h File Reference
#include <functional>
#include <wx/string.h>
#include <layer_ids.h>

Go to the source code of this file.

Classes

struct  PAD_UTILS::PAD_CHECK_RESULT
 A single finding from CheckPad(). More...
 

Namespaces

namespace  PAD_UTILS
 

Typedefs

using PAD_UTILS::PAD_CHECK_HANDLER = std::function<void( const PAD_CHECK_RESULT& )>
 

Enumerations

enum class  PAD_UTILS::PAD_CHECK_CODE {
  PAD_UTILS::PAD_SIZE_NOT_POSITIVE , PAD_UTILS::PTH_HOLE_TOO_SMALL , PAD_UTILS::PTH_HOLE_LEAVES_NO_COPPER , PAD_UTILS::PTH_HOLE_NOT_INSIDE_COPPER ,
  PAD_UTILS::HOLE_NOT_INSIDE_PAD , PAD_UTILS::NEGATIVE_LOCAL_CLEARANCE , PAD_UTILS::NEGATIVE_MASK_CLEARANCE_TOO_LARGE , PAD_UTILS::NEGATIVE_PASTE_MARGIN_TOO_LARGE ,
  PAD_UTILS::ROUNDRECT_RADIUS_NEGATIVE , PAD_UTILS::ROUNDRECT_RADIUS_TOO_LARGE , PAD_UTILS::CHAMFER_NEGATIVE , PAD_UTILS::CHAMFER_TOO_LARGE ,
  PAD_UTILS::TRAPEZOID_DELTA_TOO_LARGE , PAD_UTILS::CUSTOM_SHAPE_NOT_SINGLE_POLYGON , PAD_UTILS::TH_NO_HOLE , PAD_UTILS::PTH_NO_OUTER_COPPER ,
  PAD_UTILS::SMD_HAS_HOLE , PAD_UTILS::SMD_BOTH_OUTER_SIDES , PAD_UTILS::SMD_MASK_WRONG_SIDE , PAD_UTILS::SMD_PASTE_WRONG_SIDE ,
  PAD_UTILS::PAD_NO_OUTER_COPPER , PAD_UTILS::CONN_HAS_PASTE , PAD_UTILS::FIDUCIAL_NOT_PLATED , PAD_UTILS::TESTPOINT_NOT_PLATED ,
  PAD_UTILS::HEATSINK_NOT_PLATED , PAD_UTILS::CASTELLATED_NOT_PTH , PAD_UTILS::BGA_NOT_SMD , PAD_UTILS::MECHANICAL_NOT_PTH ,
  PAD_UTILS::PRESSFIT_NOT_PTH
}
 A specific pad check finding reason. More...
 

Functions

bool PAD_UTILS::PadHasMeaningfulRoundingRadius (const PAD &aPad, PCB_LAYER_ID aLayer)
 Returns true if the pad's rounding ratio is valid (i.e.
 
double PAD_UTILS::GetDefaultIpcRoundingRatio (const PAD &aPad, PCB_LAYER_ID aLayer)
 Get a sensible default for a rounded rectangle pad's rounding ratio.
 
void PAD_UTILS::RemoveAllDrillsFromPadstack (PADSTACK &aPadstack)
 Remove the primary drill, the secondary and tertiary drills, and any post-machining operations from a padstack.
 
void PAD_UTILS::CheckPad (const PAD &aPad, const UNITS_PROVIDER &aUnitsProvider, bool aForPadProperties, const PAD_CHECK_HANDLER &aErrorHandler)
 Run non-board-specific checks on a pad.