LibrePCB Developers Documentation
Loading...
Searching...
No Matches
Pad Class Reference

Base class for pads, extended in derived classes. More...

#include <pad.h>

+ Inheritance diagram for Pad:
+ Collaboration diagram for Pad:

Public Types

enum class  Shape
 
enum class  ComponentSide
 
enum class  Function
 

Public Member Functions

 Pad ()=delete
 
 Pad (const Pad &other) noexcept
 
 Pad (const Uuid &uuid, const Pad &other) noexcept
 
 Pad (const Uuid &uuid, const Point &pos, const Angle &rot, Shape shape, const PositiveLength &width, const PositiveLength &height, const UnsignedLimitedRatio &radius, const Path &customShapeOutline, const MaskConfig &autoStopMask, const MaskConfig &autoSolderPaste, const UnsignedLength &copperClearance, ComponentSide side, Function function, const PadHoleList &holes) noexcept
 
 Pad (const SExpression &node)
 
virtual ~Pad () noexcept
 
const UuidgetUuid () const noexcept
 
const PointgetPosition () const noexcept
 
const AnglegetRotation () const noexcept
 
Shape getShape () const noexcept
 
const PositiveLengthgetWidth () const noexcept
 
const PositiveLengthgetHeight () const noexcept
 
const UnsignedLimitedRatiogetRadius () const noexcept
 
const PathgetCustomShapeOutline () const noexcept
 
const MaskConfiggetStopMaskConfig () const noexcept
 
const MaskConfiggetSolderPasteConfig () const noexcept
 
const UnsignedLengthgetCopperClearance () const noexcept
 
ComponentSide getComponentSide () const noexcept
 
Function getFunction () const noexcept
 
bool getFunctionIsFiducial () const noexcept
 
bool getFunctionNeedsSoldering () const noexcept
 
const PadHoleListgetHoles () const noexcept
 
bool isTht () const noexcept
 
bool isOnLayer (const Layer &layer) const noexcept
 
const LayergetSmtLayer () const noexcept
 
bool hasTopCopper () const noexcept
 
bool hasBottomCopper () const noexcept
 
bool hasAutoTopStopMask () const noexcept
 
bool hasAutoBottomStopMask () const noexcept
 
bool hasAutoTopSolderPaste () const noexcept
 
bool hasAutoBottomSolderPaste () const noexcept
 
PadGeometry getGeometry () const noexcept
 
QHash< const Layer *, QList< PadGeometry > > buildPreviewGeometries () const noexcept
 
bool operator== (const Pad &rhs) const noexcept
 
bool operator!= (const Pad &rhs) const noexcept
 

Static Public Member Functions

static UnsignedLimitedRatio getRecommendedRadius (const PositiveLength &width, const PositiveLength &height) noexcept
 
static QString getFunctionDescriptionTr (Function function) noexcept
 

Protected Attributes

Uuid mUuid
 
Point mPosition
 
Angle mRotation
 
Shape mShape
 
PositiveLength mWidth
 
PositiveLength mHeight
 
UnsignedLimitedRatio mRadius
 
Path mCustomShapeOutline
 Empty if not needed; Implicitly closed.
 
MaskConfig mStopMaskConfig
 
MaskConfig mSolderPasteConfig
 
UnsignedLength mCopperClearance
 
ComponentSide mComponentSide
 
Function mFunction
 
PadHoleList mHoles
 If not empty, it's a THT pad.
 

Detailed Description

Base class for pads, extended in derived classes.

Member Enumeration Documentation

◆ Shape

enum class Shape
strong
Enumerator
RoundedRect 
RoundedOctagon 
Custom 

◆ ComponentSide

enum class ComponentSide
strong
Enumerator
Top 
Bottom 

◆ Function

enum class Function
strong
Enumerator
Unspecified 
StandardPad 
PressFitPad 
ThermalPad 
BgaPad 
EdgeConnectorPad 
TestPad 
LocalFiducial 
GlobalFiducial 
_COUNT 

Constructor & Destructor Documentation

◆ Pad() [1/5]

Pad ( )
delete

◆ Pad() [2/5]

Pad ( const Pad other)
noexcept

◆ Pad() [3/5]

Pad ( const Uuid uuid,
const Pad other 
)
noexcept

◆ Pad() [4/5]

Pad ( const Uuid uuid,
const Point pos,
const Angle rot,
Shape  shape,
const PositiveLength width,
const PositiveLength height,
const UnsignedLimitedRatio radius,
const Path customShapeOutline,
const MaskConfig autoStopMask,
const MaskConfig autoSolderPaste,
const UnsignedLength copperClearance,
ComponentSide  side,
Function  function,
const PadHoleList holes 
)
noexcept

◆ Pad() [5/5]

Pad ( const SExpression node)
explicit

◆ ~Pad()

~Pad ( )
virtualnoexcept

Member Function Documentation

◆ getUuid()

const Uuid & getUuid ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getPosition()

const Point & getPosition ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getRotation()

const Angle & getRotation ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getShape()

Shape getShape ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getWidth()

const PositiveLength & getWidth ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getHeight()

const PositiveLength & getHeight ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getRadius()

const UnsignedLimitedRatio & getRadius ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getCustomShapeOutline()

const Path & getCustomShapeOutline ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getStopMaskConfig()

const MaskConfig & getStopMaskConfig ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getSolderPasteConfig()

const MaskConfig & getSolderPasteConfig ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getCopperClearance()

const UnsignedLength & getCopperClearance ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getComponentSide()

ComponentSide getComponentSide ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getFunction()

Function getFunction ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getFunctionIsFiducial()

bool getFunctionIsFiducial ( ) const
noexcept
+ Here is the caller graph for this function:

◆ getFunctionNeedsSoldering()

bool getFunctionNeedsSoldering ( ) const
noexcept

◆ getHoles()

const PadHoleList & getHoles ( ) const
inlinenoexcept

◆ isTht()

bool isTht ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isOnLayer()

bool isOnLayer ( const Layer layer) const
noexcept

◆ getSmtLayer()

const Layer & getSmtLayer ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasTopCopper()

bool hasTopCopper ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasBottomCopper()

bool hasBottomCopper ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasAutoTopStopMask()

bool hasAutoTopStopMask ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasAutoBottomStopMask()

bool hasAutoBottomStopMask ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasAutoTopSolderPaste()

bool hasAutoTopSolderPaste ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasAutoBottomSolderPaste()

bool hasAutoBottomSolderPaste ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getGeometry()

PadGeometry getGeometry ( ) const
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildPreviewGeometries()

QHash< const Layer *, QList< PadGeometry > > buildPreviewGeometries ( ) const
noexcept
+ Here is the call graph for this function:

◆ operator==()

bool operator== ( const Pad rhs) const
noexcept

◆ operator!=()

bool operator!= ( const Pad rhs) const
inlinenoexcept

◆ getRecommendedRadius()

UnsignedLimitedRatio getRecommendedRadius ( const PositiveLength width,
const PositiveLength height 
)
staticnoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getFunctionDescriptionTr()

QString getFunctionDescriptionTr ( Function  function)
staticnoexcept
+ Here is the caller graph for this function:

Member Data Documentation

◆ mUuid

Uuid mUuid
protected

◆ mPosition

Point mPosition
protected

◆ mRotation

Angle mRotation
protected

◆ mShape

Shape mShape
protected

◆ mWidth

PositiveLength mWidth
protected

◆ mHeight

PositiveLength mHeight
protected

◆ mRadius

UnsignedLimitedRatio mRadius
protected

◆ mCustomShapeOutline

Path mCustomShapeOutline
protected

Empty if not needed; Implicitly closed.

◆ mStopMaskConfig

MaskConfig mStopMaskConfig
protected

◆ mSolderPasteConfig

MaskConfig mSolderPasteConfig
protected

◆ mCopperClearance

UnsignedLength mCopperClearance
protected

◆ mComponentSide

ComponentSide mComponentSide
protected

◆ mFunction

Function mFunction
protected

◆ mHoles

PadHoleList mHoles
protected

If not empty, it's a THT pad.


The documentation for this class was generated from the following files: