KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PNS_LAYER_RANGE Class Reference

Represent a contiguous set of PCB layers. More...

#include <pns_layerset.h>

Public Member Functions

 PNS_LAYER_RANGE ()
 
 PNS_LAYER_RANGE (int aStart, int aEnd)
 
 PNS_LAYER_RANGE (int aLayer)
 
 PNS_LAYER_RANGE (const PNS_LAYER_RANGE &aB)
 
 ~PNS_LAYER_RANGE ()
 
PNS_LAYER_RANGEoperator= (const PNS_LAYER_RANGE &aB)
 
bool Overlaps (const PNS_LAYER_RANGE &aOther) const
 
bool Overlaps (const int aLayer) const
 
bool IsMultilayer () const
 
int Start () const
 
int End () const
 
void Merge (const PNS_LAYER_RANGE &aOther)
 
PNS_LAYER_RANGE Intersection (const PNS_LAYER_RANGE &aOther) const
 Shortcut for comparisons/overlap tests.
 
bool operator== (const PNS_LAYER_RANGE &aOther) const
 
bool operator!= (const PNS_LAYER_RANGE &aOther) const
 

Static Public Member Functions

static PNS_LAYER_RANGE All ()
 

Private Attributes

int m_start
 
int m_end
 

Detailed Description

Represent a contiguous set of PCB layers.

Definition at line 31 of file pns_layerset.h.

Constructor & Destructor Documentation

◆ PNS_LAYER_RANGE() [1/4]

PNS_LAYER_RANGE::PNS_LAYER_RANGE ( )
inline

Definition at line 34 of file pns_layerset.h.

Referenced by All().

◆ PNS_LAYER_RANGE() [2/4]

PNS_LAYER_RANGE::PNS_LAYER_RANGE ( int  aStart,
int  aEnd 
)
inline

Definition at line 39 of file pns_layerset.h.

References m_end, and m_start.

◆ PNS_LAYER_RANGE() [3/4]

PNS_LAYER_RANGE::PNS_LAYER_RANGE ( int  aLayer)
inline

Definition at line 48 of file pns_layerset.h.

References m_end, and m_start.

◆ PNS_LAYER_RANGE() [4/4]

PNS_LAYER_RANGE::PNS_LAYER_RANGE ( const PNS_LAYER_RANGE aB)
inline

Definition at line 53 of file pns_layerset.h.

◆ ~PNS_LAYER_RANGE()

PNS_LAYER_RANGE::~PNS_LAYER_RANGE ( )
inline

Definition at line 58 of file pns_layerset.h.

Member Function Documentation

◆ All()

static PNS_LAYER_RANGE PNS_LAYER_RANGE::All ( )
inlinestatic

Definition at line 129 of file pns_layerset.h.

References PNS_LAYER_RANGE().

Referenced by PNS::ROUTER::QueryHoverItems().

◆ End()

◆ Intersection()

PNS_LAYER_RANGE PNS_LAYER_RANGE::Intersection ( const PNS_LAYER_RANGE aOther) const
inline

Shortcut for comparisons/overlap tests.

Definition at line 112 of file pns_layerset.h.

References m_end, and m_start.

Referenced by PNS_PCBNEW_RULE_RESOLVER::Clearance(), MOCK_RULE_RESOLVER::Clearance(), and PNS_KICAD_IFACE_BASE::IsFlashedOnLayer().

◆ IsMultilayer()

bool PNS_LAYER_RANGE::IsMultilayer ( ) const
inline

Definition at line 81 of file pns_layerset.h.

References m_end, and m_start.

Referenced by PNS::NODE::FixupVirtualVias(), and PNS::ROUTER::markViolations().

◆ Merge()

void PNS_LAYER_RANGE::Merge ( const PNS_LAYER_RANGE aOther)
inline

Definition at line 96 of file pns_layerset.h.

References m_end, and m_start.

Referenced by PNS::JOINT::Merge().

◆ operator!=()

bool PNS_LAYER_RANGE::operator!= ( const PNS_LAYER_RANGE aOther) const
inline

Definition at line 139 of file pns_layerset.h.

References m_end, and m_start.

◆ operator=()

PNS_LAYER_RANGE & PNS_LAYER_RANGE::operator= ( const PNS_LAYER_RANGE aB)
inline

Definition at line 60 of file pns_layerset.h.

References m_end, and m_start.

◆ operator==()

bool PNS_LAYER_RANGE::operator== ( const PNS_LAYER_RANGE aOther) const
inline

Definition at line 134 of file pns_layerset.h.

References m_end, and m_start.

◆ Overlaps() [1/2]

bool PNS_LAYER_RANGE::Overlaps ( const int  aLayer) const
inline

Definition at line 74 of file pns_layerset.h.

References m_end, and m_start.

◆ Overlaps() [2/2]

◆ Start()

Member Data Documentation

◆ m_end

int PNS_LAYER_RANGE::m_end
private

◆ m_start

int PNS_LAYER_RANGE::m_start
private

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