Thrill
0.1
|
Definition at line 30 of file multiway_merge.hpp.
#include <multiway_merge.hpp>
Public Types | |
using | LoserTreeType = tlx::LoserTree< Stable, ValueType, Comparator > |
using | Reader = typename std::iterator_traits< ReaderIterator >::value_type |
Public Member Functions | |
MultiwayMergeTree (ReaderIterator readers_begin, ReaderIterator readers_end, const Comparator &comp) | |
bool | HasNext () const |
ValueType | Next () |
std::pair< ValueType, unsigned > | NextWithSource () |
Private Attributes | |
std::vector< std::pair< bool, ValueType > > | current_ |
current values in each input (exist flag, value) More... | |
LoserTreeType | lt_ |
unsigned | num_inputs_ |
ReaderIterator | readers_ |
size_t | remaining_inputs_ |
using LoserTreeType = tlx::LoserTree<Stable, ValueType, Comparator> |
Definition at line 35 of file multiway_merge.hpp.
using Reader = typename std::iterator_traits<ReaderIterator>::value_type |
Definition at line 33 of file multiway_merge.hpp.
|
inline |
Definition at line 37 of file multiway_merge.hpp.
References MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::current_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::HasNext(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::lt_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::num_inputs_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::readers_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::remaining_inputs_, and TLX_LIKELY.
|
inline |
Definition at line 63 of file multiway_merge.hpp.
References MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::remaining_inputs_.
Referenced by GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator >::GetNextElem(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::Next(), and MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::NextWithSource().
|
inline |
Definition at line 87 of file multiway_merge.hpp.
References MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::current_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::HasNext(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::lt_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::readers_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::remaining_inputs_, and TLX_LIKELY.
Referenced by GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator >::GetNextElem().
|
inline |
Definition at line 67 of file multiway_merge.hpp.
References MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::current_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::HasNext(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::lt_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::readers_, MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::remaining_inputs_, and TLX_LIKELY.
|
private |
current values in each input (exist flag, value)
Definition at line 115 of file multiway_merge.hpp.
Referenced by MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::Next(), and MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::NextWithSource().
|
private |
Definition at line 113 of file multiway_merge.hpp.
Referenced by MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::Next(), and MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::NextWithSource().
|
private |
Definition at line 110 of file multiway_merge.hpp.
Referenced by MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree().
|
private |
Definition at line 109 of file multiway_merge.hpp.
Referenced by MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::Next(), and MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::NextWithSource().
|
private |
Definition at line 111 of file multiway_merge.hpp.
Referenced by MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::HasNext(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::MultiwayMergeTree(), MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::Next(), and MultiwayMergeTree< ValueType, ReaderIterator, Comparator, Stable >::NextWithSource().