|
SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
|
#include <QuadTree.h>

Classes | |
| struct | Coord |
Public Types | |
| using | Traits = QuadTreeTraits<T> |
Public Member Functions | |
| QuadTree (size_t capacity=100) | |
| QuadTree (const QuadTree &tree) | |
| void | add (const T &data) |
| void | remove (const T &data) |
| std::vector< T > | getPointsWithinRange (Coord c, double range) const |
Private Member Functions | |
| void | addLocally (const T &data) |
| void | split () |
| void | expand (Coord c) |
| size_t | getQuadrant (Coord c) const |
| bool | isContained (Coord c) const |
| Coord | getQuadrantMin (size_t quadrant) const |
| Coord | getQuadrantMax (size_t quadrant) const |
Private Attributes | |
| size_t | m_capacity |
| bool | m_is_divided |
| Coord | m_min |
| Coord | m_max |
| std::vector< T > | m_data |
| std::shared_ptr< QuadTree< T > > | m_sub_trees [4] |
Definition at line 32 of file QuadTree.h.
| using SourceXtractor::QuadTree< T >::Traits = QuadTreeTraits<T> |
Definition at line 34 of file QuadTree.h.
| SourceXtractor::QuadTree< T >::QuadTree | ( | size_t | capacity = 100 | ) |
Definition at line 24 of file QuadTree.icpp.
References m_capacity, and m_is_divided.
Referenced by QuadTree().
| SourceXtractor::QuadTree< T >::QuadTree | ( | const QuadTree< T > & | tree | ) |
Definition at line 28 of file QuadTree.icpp.
References m_capacity, m_data, m_is_divided, m_max, m_min, m_sub_trees, and QuadTree().

| void SourceXtractor::QuadTree< T >::add | ( | const T & | data | ) |
Definition at line 40 of file QuadTree.icpp.
References SourceXtractor::QuadTreeTraits< T >::getCoord(), and m_is_divided.
Referenced by split().

|
private |
Definition at line 111 of file QuadTree.icpp.
References addLocally(), SourceXtractor::QuadTreeTraits< T >::getCoord(), m_data, m_is_divided, m_max, m_min, std::max(), and std::min().
Referenced by addLocally().

|
private |
Definition at line 145 of file QuadTree.icpp.
References expand(), getQuadrant(), isContained(), m_is_divided, m_max, m_min, m_sub_trees, std::make_shared(), SourceXtractor::QuadTree< T >::Coord::x, and SourceXtractor::QuadTree< T >::Coord::y.
Referenced by expand().

| std::vector< T > SourceXtractor::QuadTree< T >::getPointsWithinRange | ( | Coord | c, |
| double | range ) const |
Definition at line 81 of file QuadTree.icpp.
References std::back_inserter(), std::copy_if(), std::vector< T >::end(), std::vector< T >::insert(), m_data, m_is_divided, m_sub_trees, std::min(), SourceXtractor::QuadTree< T >::Coord::x, and SourceXtractor::QuadTree< T >::Coord::y.

|
private |
Definition at line 171 of file QuadTree.icpp.
References getQuadrant(), m_max, m_min, SourceXtractor::QuadTree< T >::Coord::x, and SourceXtractor::QuadTree< T >::Coord::y.
Referenced by expand(), and getQuadrant().

|
private |
Definition at line 196 of file QuadTree.icpp.
References getQuadrantMax(), m_max, and m_min.
Referenced by getQuadrantMax().

|
private |
Definition at line 188 of file QuadTree.icpp.
References getQuadrantMin(), m_max, and m_min.
Referenced by getQuadrantMin().

|
private |
Definition at line 183 of file QuadTree.icpp.
References isContained(), m_max, m_min, SourceXtractor::QuadTree< T >::Coord::x, and SourceXtractor::QuadTree< T >::Coord::y.
Referenced by expand(), isContained(), and remove().

| void SourceXtractor::QuadTree< T >::remove | ( | const T & | data | ) |
Definition at line 64 of file QuadTree.icpp.
References std::find(), SourceXtractor::QuadTreeTraits< T >::getCoord(), isContained(), m_data, m_is_divided, and m_sub_trees.

|
private |
Definition at line 130 of file QuadTree.icpp.
References add(), m_data, m_is_divided, m_max, m_min, std::max(), and split().
Referenced by split().

|
private |
Definition at line 57 of file QuadTree.h.
Referenced by QuadTree(), and QuadTree().
|
private |
Definition at line 61 of file QuadTree.h.
Referenced by addLocally(), getPointsWithinRange(), QuadTree(), remove(), and split().
|
private |
Definition at line 59 of file QuadTree.h.
Referenced by add(), addLocally(), expand(), getPointsWithinRange(), QuadTree(), QuadTree(), remove(), and split().
|
private |
Definition at line 60 of file QuadTree.h.
Referenced by addLocally(), expand(), getQuadrant(), getQuadrantMax(), getQuadrantMin(), isContained(), QuadTree(), and split().
|
private |
Definition at line 60 of file QuadTree.h.
Referenced by addLocally(), expand(), getQuadrant(), getQuadrantMax(), getQuadrantMin(), isContained(), QuadTree(), and split().
|
private |
Definition at line 62 of file QuadTree.h.
Referenced by expand(), getPointsWithinRange(), QuadTree(), and remove().