KiCad PCB EDA Suite
Loading...
Searching...
No Matches
SHAPE_INDEX_LIST< T, > Class Template Reference

#include <shape_index_list.h>

Classes

class  iterator
 
class  query_iterator
 
struct  SHAPE_ENTRY
 

Public Member Functions

void Add (T aItem)
 
void Remove (const T aItem)
 
int Size () const
 
template<class Visitor>
int Query (const SHAPE *aShape, int aMinDistance, Visitor &aV, bool aExact=true)
 
void Clear ()
 
query_iterator qbegin (SHAPE *aShape, int aMinDistance, bool aExact)
 
const query_iterator qend ()
 
iterator begin ()
 
iterator end ()
 

Private Types

typedef std::vector< SHAPE_ENTRYSHAPE_VEC
 
typedef std::vector< SHAPE_ENTRY >::iterator SHAPE_VEC_ITER
 

Private Attributes

SHAPE_VEC m_shapes
 

Detailed Description

template<class T, const SHAPE * = defaultShapeFunctor<T>>
class SHAPE_INDEX_LIST< T, >

Definition at line 42 of file shape_index_list.h.

Member Typedef Documentation

◆ SHAPE_VEC

template<class T, const SHAPE * = defaultShapeFunctor<T>>
typedef std::vector<SHAPE_ENTRY> SHAPE_INDEX_LIST< T, >::SHAPE_VEC
private

Definition at line 62 of file shape_index_list.h.

◆ SHAPE_VEC_ITER

template<class T, const SHAPE * = defaultShapeFunctor<T>>
typedef std::vector<SHAPE_ENTRY>::iterator SHAPE_INDEX_LIST< T, >::SHAPE_VEC_ITER
private

Definition at line 63 of file shape_index_list.h.

Member Function Documentation

◆ Add()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
void SHAPE_INDEX_LIST< T, >::Add ( T aItem)
inline

Definition at line 213 of file shape_index_list.h.

References m_shapes, and T.

◆ begin()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
iterator SHAPE_INDEX_LIST< T, >::begin ( )
inline

Definition at line 282 of file shape_index_list.h.

References m_shapes.

◆ Clear()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
void SHAPE_INDEX_LIST< T, >::Clear ( )
inline

Definition at line 267 of file shape_index_list.h.

References m_shapes.

◆ end()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
iterator SHAPE_INDEX_LIST< T, >::end ( )
inline

Definition at line 287 of file shape_index_list.h.

References m_shapes.

◆ qbegin()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
query_iterator SHAPE_INDEX_LIST< T, >::qbegin ( SHAPE * aShape,
int aMinDistance,
bool aExact )
inline

Definition at line 272 of file shape_index_list.h.

References m_shapes.

◆ qend()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
const query_iterator SHAPE_INDEX_LIST< T, >::qend ( )
inline

Definition at line 277 of file shape_index_list.h.

References m_shapes.

◆ Query()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
template<class Visitor>
int SHAPE_INDEX_LIST< T, >::Query ( const SHAPE * aShape,
int aMinDistance,
Visitor & aV,
bool aExact = true )
inline

Definition at line 242 of file shape_index_list.h.

References SHAPE::BBox(), m_shapes, and BOX2< Vec >::SquaredDistance().

◆ Remove()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
void SHAPE_INDEX_LIST< T, >::Remove ( const T aItem)
inline

Definition at line 220 of file shape_index_list.h.

References m_shapes, and T.

◆ Size()

template<class T, const SHAPE * = defaultShapeFunctor<T>>
int SHAPE_INDEX_LIST< T, >::Size ( ) const
inline

Definition at line 236 of file shape_index_list.h.

References m_shapes.

Member Data Documentation

◆ m_shapes

template<class T, const SHAPE * = defaultShapeFunctor<T>>
SHAPE_VEC SHAPE_INDEX_LIST< T, >::m_shapes
private

Definition at line 293 of file shape_index_list.h.

Referenced by Add(), begin(), Clear(), end(), qbegin(), qend(), Query(), Remove(), and Size().


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