LibrePCB Developers Documentation
Loading...
Searching...
No Matches
BoardDesignRuleCheckSettings Class Referencefinal

The BoardDesignRuleCheckSettings class. More...

#include <boarddesignrulechecksettings.h>

+ Collaboration diagram for BoardDesignRuleCheckSettings:

Classes

struct  Source
 
struct  SourceSetCmp
 

Public Types

enum class  AllowedSlots : int
 
typedef std::unordered_set< Source, SourceSetCmp, SourceSetCmpSourceSet
 

Public Member Functions

 BoardDesignRuleCheckSettings () noexcept
 
 BoardDesignRuleCheckSettings (const BoardDesignRuleCheckSettings &other) noexcept
 
 BoardDesignRuleCheckSettings (const SExpression &node)
 
 ~BoardDesignRuleCheckSettings () noexcept
 
const SourceSetgetSources () const noexcept
 
const std::pair< UnsignedLength, UnsignedLength > & getMinBoardSize () const noexcept
 
const std::pair< UnsignedLength, UnsignedLength > & getMaxBoardSizeDoubleSided () const noexcept
 
const std::pair< UnsignedLength, UnsignedLength > & getMaxBoardSizeMultiLayer () const noexcept
 
const QSet< PositiveLength > & getPcbThickness () const noexcept
 
uint getMaxLayerCount () const noexcept
 
const QSet< const PcbColor * > & getSolderResist () const noexcept
 
const QSet< const PcbColor * > & getSilkscreen () const noexcept
 
const UnsignedLengthgetMinCopperCopperClearance () const noexcept
 
const UnsignedLengthgetMinCopperBoardClearance () const noexcept
 
const UnsignedLengthgetMinCopperNpthClearance () const noexcept
 
const UnsignedLengthgetMinDrillDrillClearance () const noexcept
 
const UnsignedLengthgetMinDrillBoardClearance () const noexcept
 
const UnsignedLengthgetMinSilkscreenStopmaskClearance () const noexcept
 
const UnsignedLengthgetMinCopperWidth () const noexcept
 
const UnsignedLengthgetMinPthAnnularRing () const noexcept
 
const UnsignedLengthgetMinNpthDrillDiameter () const noexcept
 
const UnsignedLengthgetMinPthDrillDiameter () const noexcept
 
const UnsignedLengthgetMinNpthSlotWidth () const noexcept
 
const UnsignedLengthgetMinPthSlotWidth () const noexcept
 
const UnsignedLengthgetMaxTentedViaDrillDiameter () const noexcept
 
const UnsignedLengthgetMinSilkscreenWidth () const noexcept
 
const UnsignedLengthgetMinSilkscreenTextHeight () const noexcept
 
const UnsignedLengthgetMinOutlineToolDiameter () const noexcept
 
bool getBlindViasAllowed () const noexcept
 
bool getBuriedViasAllowed () const noexcept
 
AllowedSlots getAllowedNpthSlots () const noexcept
 
AllowedSlots getAllowedPthSlots () const noexcept
 
const QMap< QString, QList< SExpression > > & getOptions () const noexcept
 
void setSources (const SourceSet &value) noexcept
 
void setMinBoardSize (const std::pair< UnsignedLength, UnsignedLength > &value) noexcept
 
void setMaxBoardSizeDoubleSided (const std::pair< UnsignedLength, UnsignedLength > &value) noexcept
 
void setMaxBoardSizeMultiLayer (const std::pair< UnsignedLength, UnsignedLength > &value) noexcept
 
void setPcbThickness (const QSet< PositiveLength > &value) noexcept
 
void setMaxLayerCount (uint value) noexcept
 
void setSolderResist (const QSet< const PcbColor * > &value) noexcept
 
void setSilkscreen (const QSet< const PcbColor * > &value) noexcept
 
void setMinCopperCopperClearance (const UnsignedLength &value) noexcept
 
void setMinCopperBoardClearance (const UnsignedLength &value) noexcept
 
void setMinCopperNpthClearance (const UnsignedLength &value) noexcept
 
void setMinDrillDrillClearance (const UnsignedLength &value) noexcept
 
void setMinDrillBoardClearance (const UnsignedLength &value) noexcept
 
void setMinSilkscreenStopmaskClearance (const UnsignedLength &value) noexcept
 
void setMinCopperWidth (const UnsignedLength &value) noexcept
 
void setMinPthAnnularRing (const UnsignedLength &value) noexcept
 
void setMinNpthDrillDiameter (const UnsignedLength &value) noexcept
 
void setMinPthDrillDiameter (const UnsignedLength &value) noexcept
 
void setMinNpthSlotWidth (const UnsignedLength &value) noexcept
 
void setMinPthSlotWidth (const UnsignedLength &value) noexcept
 
void setMaxTentedViaDrillDiameter (const UnsignedLength &value) noexcept
 
void setMinSilkscreenWidth (const UnsignedLength &value) noexcept
 
void setMinSilkscreenTextHeight (const UnsignedLength &value) noexcept
 
void setMinOutlineToolDiameter (const UnsignedLength &value) noexcept
 
void setBlindViasAllowed (bool value) noexcept
 
void setBuriedViasAllowed (bool value) noexcept
 
void setAllowedNpthSlots (AllowedSlots value) noexcept
 
void setAllowedPthSlots (AllowedSlots value) noexcept
 
void setOptions (const QMap< QString, QList< SExpression > > &value) noexcept
 
void serialize (SExpression &root) const
 Serialize into librepcb::SExpression node.
 
BoardDesignRuleCheckSettingsoperator= (const BoardDesignRuleCheckSettings &rhs) noexcept
 
bool operator== (const BoardDesignRuleCheckSettings &rhs) const noexcept
 
bool operator!= (const BoardDesignRuleCheckSettings &rhs) const noexcept
 

Private Attributes

SourceSet mSources
 
std::pair< UnsignedLength, UnsignedLengthmMinBoardSize
 
std::pair< UnsignedLength, UnsignedLengthmMaxBoardSizeDoubleSided
 
std::pair< UnsignedLength, UnsignedLengthmMaxBoardSizeMultiLayer
 
QSet< PositiveLengthmPcbThickness
 No restrictions if empty.
 
uint mMaxLayerCount
 0 = Check disabled
 
QSet< const PcbColor * > mSolderResist
 Empty=any/unknown. nullptr=none.
 
QSet< const PcbColor * > mSilkscreen
 Empty=any/unknown. nullptr=none.
 
UnsignedLength mMinCopperCopperClearance
 
UnsignedLength mMinCopperBoardClearance
 
UnsignedLength mMinCopperNpthClearance
 
UnsignedLength mMinDrillDrillClearance
 
UnsignedLength mMinDrillBoardClearance
 
UnsignedLength mMinSilkscreenStopmaskClearance
 
UnsignedLength mMinCopperWidth
 
UnsignedLength mMinPthAnnularRing
 
UnsignedLength mMinNpthDrillDiameter
 
UnsignedLength mMinPthDrillDiameter
 
UnsignedLength mMinNpthSlotWidth
 
UnsignedLength mMinPthSlotWidth
 
UnsignedLength mMaxTentedViaDrillDiameter
 
UnsignedLength mMinSilkscreenWidth
 
UnsignedLength mMinSilkscreenTextHeight
 
UnsignedLength mMinOutlineToolDiameter
 
bool mBlindViasAllowed
 
bool mBuriedViasAllowed
 
AllowedSlots mAllowedNpthSlots
 
AllowedSlots mAllowedPthSlots
 
QMap< QString, QList< SExpression > > mOptions
 

Detailed Description

Member Typedef Documentation

◆ SourceSet

typedef std::unordered_set<Source, SourceSetCmp, SourceSetCmp> SourceSet

Member Enumeration Documentation

◆ AllowedSlots

enum class AllowedSlots : int
strong
Enumerator
None 

No slots are allowed at all.

SingleSegmentStraight 

Straight single-segment slots are allowed.

MultiSegmentStraight 

Straight multi-segment slots are allowed.

Any 

Any kind of slot is allowed (including curves).

Constructor & Destructor Documentation

◆ BoardDesignRuleCheckSettings() [1/3]

◆ BoardDesignRuleCheckSettings() [2/3]

◆ BoardDesignRuleCheckSettings() [3/3]

BoardDesignRuleCheckSettings ( const SExpression node)
explicit
+ Here is the call graph for this function:

◆ ~BoardDesignRuleCheckSettings()

Member Function Documentation

◆ getSources()

const SourceSet & getSources ( ) const
inlinenoexcept

◆ getMinBoardSize()

const std::pair< UnsignedLength, UnsignedLength > & getMinBoardSize ( ) const
inlinenoexcept

◆ getMaxBoardSizeDoubleSided()

const std::pair< UnsignedLength, UnsignedLength > & getMaxBoardSizeDoubleSided ( ) const
inlinenoexcept

◆ getMaxBoardSizeMultiLayer()

const std::pair< UnsignedLength, UnsignedLength > & getMaxBoardSizeMultiLayer ( ) const
inlinenoexcept

◆ getPcbThickness()

const QSet< PositiveLength > & getPcbThickness ( ) const
inlinenoexcept

◆ getMaxLayerCount()

uint getMaxLayerCount ( ) const
inlinenoexcept

◆ getSolderResist()

const QSet< const PcbColor * > & getSolderResist ( ) const
inlinenoexcept

◆ getSilkscreen()

const QSet< const PcbColor * > & getSilkscreen ( ) const
inlinenoexcept

◆ getMinCopperCopperClearance()

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

◆ getMinCopperBoardClearance()

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

◆ getMinCopperNpthClearance()

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

◆ getMinDrillDrillClearance()

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

◆ getMinDrillBoardClearance()

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

◆ getMinSilkscreenStopmaskClearance()

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

◆ getMinCopperWidth()

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

◆ getMinPthAnnularRing()

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

◆ getMinNpthDrillDiameter()

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

◆ getMinPthDrillDiameter()

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

◆ getMinNpthSlotWidth()

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

◆ getMinPthSlotWidth()

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

◆ getMaxTentedViaDrillDiameter()

const UnsignedLength & getMaxTentedViaDrillDiameter ( ) const
inlinenoexcept

◆ getMinSilkscreenWidth()

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

◆ getMinSilkscreenTextHeight()

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

◆ getMinOutlineToolDiameter()

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

◆ getBlindViasAllowed()

bool getBlindViasAllowed ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getBuriedViasAllowed()

bool getBuriedViasAllowed ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getAllowedNpthSlots()

AllowedSlots getAllowedNpthSlots ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getAllowedPthSlots()

AllowedSlots getAllowedPthSlots ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getOptions()

const QMap< QString, QList< SExpression > > & getOptions ( ) const
inlinenoexcept

◆ setSources()

void setSources ( const SourceSet value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinBoardSize()

void setMinBoardSize ( const std::pair< UnsignedLength, UnsignedLength > &  value)
inlinenoexcept

◆ setMaxBoardSizeDoubleSided()

void setMaxBoardSizeDoubleSided ( const std::pair< UnsignedLength, UnsignedLength > &  value)
inlinenoexcept

◆ setMaxBoardSizeMultiLayer()

void setMaxBoardSizeMultiLayer ( const std::pair< UnsignedLength, UnsignedLength > &  value)
inlinenoexcept

◆ setPcbThickness()

void setPcbThickness ( const QSet< PositiveLength > &  value)
inlinenoexcept

◆ setMaxLayerCount()

void setMaxLayerCount ( uint  value)
inlinenoexcept

◆ setSolderResist()

void setSolderResist ( const QSet< const PcbColor * > &  value)
inlinenoexcept

◆ setSilkscreen()

void setSilkscreen ( const QSet< const PcbColor * > &  value)
inlinenoexcept

◆ setMinCopperCopperClearance()

void setMinCopperCopperClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinCopperBoardClearance()

void setMinCopperBoardClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinCopperNpthClearance()

void setMinCopperNpthClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinDrillDrillClearance()

void setMinDrillDrillClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinDrillBoardClearance()

void setMinDrillBoardClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinSilkscreenStopmaskClearance()

void setMinSilkscreenStopmaskClearance ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinCopperWidth()

void setMinCopperWidth ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinPthAnnularRing()

void setMinPthAnnularRing ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinNpthDrillDiameter()

void setMinNpthDrillDiameter ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinPthDrillDiameter()

void setMinPthDrillDiameter ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinNpthSlotWidth()

void setMinNpthSlotWidth ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinPthSlotWidth()

void setMinPthSlotWidth ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMaxTentedViaDrillDiameter()

void setMaxTentedViaDrillDiameter ( const UnsignedLength value)
inlinenoexcept

◆ setMinSilkscreenWidth()

void setMinSilkscreenWidth ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinSilkscreenTextHeight()

void setMinSilkscreenTextHeight ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setMinOutlineToolDiameter()

void setMinOutlineToolDiameter ( const UnsignedLength value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setBlindViasAllowed()

void setBlindViasAllowed ( bool  value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setBuriedViasAllowed()

void setBuriedViasAllowed ( bool  value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setAllowedNpthSlots()

void setAllowedNpthSlots ( AllowedSlots  value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setAllowedPthSlots()

void setAllowedPthSlots ( AllowedSlots  value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ setOptions()

void setOptions ( const QMap< QString, QList< SExpression > > &  value)
inlinenoexcept
+ Here is the caller graph for this function:

◆ serialize()

void serialize ( SExpression root) const

Serialize into librepcb::SExpression node.

Parameters
rootRoot node to serialize into.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator=()

BoardDesignRuleCheckSettings & operator= ( const BoardDesignRuleCheckSettings rhs)
noexcept

◆ operator==()

bool operator== ( const BoardDesignRuleCheckSettings rhs) const
noexcept

◆ operator!=()

bool operator!= ( const BoardDesignRuleCheckSettings rhs) const
inlinenoexcept

Member Data Documentation

◆ mSources

SourceSet mSources
private

◆ mMinBoardSize

std::pair<UnsignedLength, UnsignedLength> mMinBoardSize
private

◆ mMaxBoardSizeDoubleSided

std::pair<UnsignedLength, UnsignedLength> mMaxBoardSizeDoubleSided
private

◆ mMaxBoardSizeMultiLayer

std::pair<UnsignedLength, UnsignedLength> mMaxBoardSizeMultiLayer
private

◆ mPcbThickness

QSet<PositiveLength> mPcbThickness
private

No restrictions if empty.

◆ mMaxLayerCount

uint mMaxLayerCount
private

0 = Check disabled

◆ mSolderResist

QSet<const PcbColor*> mSolderResist
private

Empty=any/unknown. nullptr=none.

◆ mSilkscreen

QSet<const PcbColor*> mSilkscreen
private

Empty=any/unknown. nullptr=none.

◆ mMinCopperCopperClearance

UnsignedLength mMinCopperCopperClearance
private

◆ mMinCopperBoardClearance

UnsignedLength mMinCopperBoardClearance
private

◆ mMinCopperNpthClearance

UnsignedLength mMinCopperNpthClearance
private

◆ mMinDrillDrillClearance

UnsignedLength mMinDrillDrillClearance
private

◆ mMinDrillBoardClearance

UnsignedLength mMinDrillBoardClearance
private

◆ mMinSilkscreenStopmaskClearance

UnsignedLength mMinSilkscreenStopmaskClearance
private

◆ mMinCopperWidth

UnsignedLength mMinCopperWidth
private

◆ mMinPthAnnularRing

UnsignedLength mMinPthAnnularRing
private

◆ mMinNpthDrillDiameter

UnsignedLength mMinNpthDrillDiameter
private

◆ mMinPthDrillDiameter

UnsignedLength mMinPthDrillDiameter
private

◆ mMinNpthSlotWidth

UnsignedLength mMinNpthSlotWidth
private

◆ mMinPthSlotWidth

UnsignedLength mMinPthSlotWidth
private

◆ mMaxTentedViaDrillDiameter

UnsignedLength mMaxTentedViaDrillDiameter
private

◆ mMinSilkscreenWidth

UnsignedLength mMinSilkscreenWidth
private

◆ mMinSilkscreenTextHeight

UnsignedLength mMinSilkscreenTextHeight
private

◆ mMinOutlineToolDiameter

UnsignedLength mMinOutlineToolDiameter
private

◆ mBlindViasAllowed

bool mBlindViasAllowed
private

◆ mBuriedViasAllowed

bool mBuriedViasAllowed
private

◆ mAllowedNpthSlots

AllowedSlots mAllowedNpthSlots
private

◆ mAllowedPthSlots

AllowedSlots mAllowedPthSlots
private

◆ mOptions

QMap<QString, QList<SExpression> > mOptions
private

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