KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PNS::ITEM_SET Class Reference

#include <pns_itemset.h>

Inheritance diagram for PNS::ITEM_SET:
PNS::ITEM_OWNER

Public Member Functions

 ITEM_SET (ITEM *aInitialItem=nullptr, bool aBecomeOwner=false)
 
 ITEM_SET (const ITEM_SET &aOther)
 
 ~ITEM_SET ()
 
ITEM_SEToperator= (const ITEM_SET &aOther)
 
int Count (int aKindMask=-1) const
 
bool Empty () const
 
std::vector< ITEM * > & Items ()
 
const std::vector< ITEM * > & CItems () const
 
ITEM_SETFilterLayers (int aStart, int aEnd=-1, bool aInvert=false)
 
ITEM_SETFilterKinds (int aKindMask, bool aInvert=false)
 
ITEM_SETFilterNet (NET_HANDLE aNet, bool aInvert=false)
 
ITEM_SETFilterMarker (int aMarker, bool aInvert=false)
 
ITEM_SETExcludeLayers (int aStart, int aEnd=-1)
 
ITEM_SETExcludeKinds (int aKindMask)
 
ITEM_SETExcludeNet (NET_HANDLE aNet)
 
ITEM_SETExcludeItem (const ITEM *aItem)
 
int Size () const
 
void Add (const LINE &aLine)
 
void Prepend (const LINE &aLine)
 
ITEMoperator[] (size_t aIndex) const
 
std::vector< ITEM * >::iterator begin ()
 
std::vector< ITEM * >::iterator end ()
 
std::vector< ITEM * >::const_iterator cbegin () const
 
std::vector< ITEM * >::const_iterator cend () const
 
void Add (ITEM *aItem, bool aBecomeOwner=false)
 
void Prepend (ITEM *aItem, bool aBecomeOwner=false)
 
void Clear ()
 
bool Contains (ITEM *aItem) const
 
void Erase (ITEM *aItem)
 
template<class T >
T * FindByKind (ITEM::PnsKind kind, int index=0)
 
ITEMFindVertex (const VECTOR2I &aV) const
 

Private Attributes

std::vector< ITEM * > m_items
 

Detailed Description

Definition at line 36 of file pns_itemset.h.

Constructor & Destructor Documentation

◆ ITEM_SET() [1/2]

PNS::ITEM_SET::ITEM_SET ( ITEM aInitialItem = nullptr,
bool  aBecomeOwner = false 
)
inline

Definition at line 39 of file pns_itemset.h.

References m_items.

◆ ITEM_SET() [2/2]

PNS::ITEM_SET::ITEM_SET ( const ITEM_SET aOther)
inline

Definition at line 48 of file pns_itemset.h.

References m_items.

◆ ~ITEM_SET()

PNS::ITEM_SET::~ITEM_SET ( )

Definition at line 28 of file pns_itemset.cpp.

Member Function Documentation

◆ Add() [1/2]

◆ Add() [2/2]

void PNS::ITEM_SET::Add ( ITEM aItem,
bool  aBecomeOwner = false 
)
inline

Definition at line 130 of file pns_itemset.h.

References m_items, and PNS::OWNABLE_ITEM::SetOwner().

◆ begin()

std::vector< ITEM * >::iterator PNS::ITEM_SET::begin ( )
inline

Definition at line 125 of file pns_itemset.h.

References m_items.

◆ cbegin()

std::vector< ITEM * >::const_iterator PNS::ITEM_SET::cbegin ( ) const
inline

Definition at line 127 of file pns_itemset.h.

References m_items.

◆ cend()

std::vector< ITEM * >::const_iterator PNS::ITEM_SET::cend ( ) const
inline

Definition at line 128 of file pns_itemset.h.

References m_items.

◆ CItems()

◆ Clear()

◆ Contains()

bool PNS::ITEM_SET::Contains ( ITEM aItem) const
inline

◆ Count()

◆ Empty()

◆ end()

std::vector< ITEM * >::iterator PNS::ITEM_SET::end ( )
inline

Definition at line 126 of file pns_itemset.h.

References m_items.

◆ Erase()

void PNS::ITEM_SET::Erase ( ITEM aItem)
inline

Definition at line 156 of file pns_itemset.h.

References m_items.

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

◆ ExcludeItem()

ITEM_SET & PNS::ITEM_SET::ExcludeItem ( const ITEM aItem)

Definition at line 119 of file pns_itemset.cpp.

References m_items.

Referenced by PNS_KICAD_IFACE_BASE::inheritTrackWidth().

◆ ExcludeKinds()

ITEM_SET & PNS::ITEM_SET::ExcludeKinds ( int  aKindMask)
inline

Definition at line 100 of file pns_itemset.h.

References FilterKinds().

◆ ExcludeLayers()

ITEM_SET & PNS::ITEM_SET::ExcludeLayers ( int  aStart,
int  aEnd = -1 
)
inline

Definition at line 95 of file pns_itemset.h.

References FilterLayers().

◆ ExcludeNet()

ITEM_SET & PNS::ITEM_SET::ExcludeNet ( NET_HANDLE  aNet)
inline

Definition at line 105 of file pns_itemset.h.

References FilterNet().

◆ FilterKinds()

ITEM_SET & PNS::ITEM_SET::FilterKinds ( int  aKindMask,
bool  aInvert = false 
)

Definition at line 71 of file pns_itemset.cpp.

References m_items.

Referenced by ExcludeKinds(), and PNS_KICAD_IFACE_BASE::inheritTrackWidth().

◆ FilterLayers()

ITEM_SET & PNS::ITEM_SET::FilterLayers ( int  aStart,
int  aEnd = -1,
bool  aInvert = false 
)

Definition at line 49 of file pns_itemset.cpp.

References m_items.

Referenced by ExcludeLayers().

◆ FilterMarker()

ITEM_SET & PNS::ITEM_SET::FilterMarker ( int  aMarker,
bool  aInvert = false 
)

Definition at line 87 of file pns_itemset.cpp.

References m_items.

◆ FilterNet()

ITEM_SET & PNS::ITEM_SET::FilterNet ( NET_HANDLE  aNet,
bool  aInvert = false 
)

Definition at line 103 of file pns_itemset.cpp.

References m_items.

Referenced by ExcludeNet().

◆ FindByKind()

template<class T >
T * PNS::ITEM_SET::FindByKind ( ITEM::PnsKind  kind,
int  index = 0 
)
inline

Definition at line 165 of file pns_itemset.h.

References m_items.

◆ FindVertex()

ITEM * PNS::ITEM_SET::FindVertex ( const VECTOR2I aV) const

Definition at line 134 of file pns_itemset.cpp.

References m_items.

Referenced by PNS::MULTI_DRAGGER::Start().

◆ Items()

◆ operator=()

ITEM_SET & PNS::ITEM_SET::operator= ( const ITEM_SET aOther)
inline

Definition at line 55 of file pns_itemset.h.

References m_items.

◆ operator[]()

ITEM * PNS::ITEM_SET::operator[] ( size_t  aIndex) const
inline

Definition at line 120 of file pns_itemset.h.

References m_items.

◆ Prepend() [1/2]

void PNS::ITEM_SET::Prepend ( const LINE aLine)

Definition at line 41 of file pns_itemset.cpp.

References PNS::LINE::Clone(), copy, and m_items.

Referenced by PNS::TOPOLOGY::followTrivialPath().

◆ Prepend() [2/2]

void PNS::ITEM_SET::Prepend ( ITEM aItem,
bool  aBecomeOwner = false 
)
inline

Definition at line 138 of file pns_itemset.h.

References m_items, and PNS::OWNABLE_ITEM::SetOwner().

◆ Size()

Member Data Documentation

◆ m_items


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