|
KiCad PCB EDA Suite
|
The EE_TYPE struct provides a type-specific auto-range iterator to the RTree. More...
#include <sch_rtree.h>
Public Types | |
| using | SearchIter = typename ee_rtree::SearchIterator |
Public Member Functions | |
| EE_TYPE (const ee_rtree &aTree, KICAD_T aType) | |
| EE_TYPE (const ee_rtree &aTree, KICAD_T aType, const BOX2I &aRect) | |
| SearchIter | begin () |
| SearchIter | end () |
| bool | empty () |
Private Attributes | |
| int | m_min [3] = {} |
| int | m_max [3] = {} |
| ee_rtree::SearchRange | m_range { nullptr, m_min, m_max } |
The EE_TYPE struct provides a type-specific auto-range iterator to the RTree.
Using this struct, one can write lines like:
for( auto item : rtree.OfType( SCH_SYMBOL_T ) )
and iterate over the RTree items that are symbols only.
Uses a lazy SearchRange internally to avoid materializing results.
Definition at line 174 of file sch_rtree.h.
| using EE_RTREE::EE_TYPE::SearchIter = typename ee_rtree::SearchIterator |
Definition at line 176 of file sch_rtree.h.
Definition at line 178 of file sch_rtree.h.
References BaseType(), m_max, m_min, m_range, KIRTREE::DYNAMIC_RTREE< DATATYPE, ELEMTYPE, NUMDIMS, TMAXNODES >::Overlapping(), and SCH_LOCATE_ANY_T.
Definition at line 196 of file sch_rtree.h.
References BaseType(), BOX2< Vec >::GetBottom(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), m_max, m_min, m_range, KIRTREE::DYNAMIC_RTREE< DATATYPE, ELEMTYPE, NUMDIMS, TMAXNODES >::Overlapping(), and SCH_LOCATE_ANY_T.
|
inline |
Definition at line 214 of file sch_rtree.h.
References m_range.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and SCH_SCREEN::HasItems().
|
inline |
Definition at line 217 of file sch_rtree.h.
References m_range.
|
inline |
Definition at line 215 of file sch_rtree.h.
References m_range.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and SCH_SCREEN::HasItems().
|
private |
Definition at line 221 of file sch_rtree.h.
|
private |
Definition at line 220 of file sch_rtree.h.