tlx
Loading...
Searching...
No Matches
loser_tree.hpp File Reference
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <functional>
#include <utility>
#include <tlx/container/simple_vector.hpp>
#include <tlx/define/likely.hpp>
#include <tlx/math/round_to_power_of_two.hpp>
#include <tlx/unused.hpp>

Go to the source code of this file.

Classes

class  LoserTreeCopyBase< ValueType, Comparator >
 Guarded loser tree/tournament tree, either copying the whole element into the tree structure, or looking up the element via the index. More...
 
struct  LoserTreeCopyBase< ValueType, Comparator >::Loser
 Internal representation of a loser tree player/node. More...
 
class  LoserTreeCopy< Stable, ValueType, Comparator >
 Guarded loser tree/tournament tree, either copying the whole element into the tree structure, or looking up the element via the index. More...
 
class  LoserTreeCopy< true, ValueType, Comparator >
 Guarded loser tree/tournament tree, either copying the whole element into the tree structure, or looking up the element via the index. More...
 
class  LoserTreePointerBase< ValueType, Comparator >
 Guarded loser tree, using pointers to the elements instead of copying them into the tree nodes. More...
 
struct  LoserTreePointerBase< ValueType, Comparator >::Loser
 Internal representation of a loser tree player/node. More...
 
class  LoserTreePointer< Stable, ValueType, Comparator >
 Guarded loser tree, using pointers to the elements instead of copying them into the tree nodes. More...
 
class  LoserTreePointer< true, ValueType, Comparator >
 Guarded loser tree, using pointers to the elements instead of copying them into the tree nodes. More...
 
class  LoserTreeCopyUnguardedBase< ValueType, Comparator >
 Unguarded loser tree, copying the whole element into the tree structure. More...
 
struct  LoserTreeCopyUnguardedBase< ValueType, Comparator >::Loser
 Internal representation of a loser tree player/node. More...
 
class  LoserTreeCopyUnguarded< Stable, ValueType, Comparator >
 
class  LoserTreeCopyUnguarded< true, ValueType, Comparator >
 
class  LoserTreePointerUnguardedBase< ValueType, Comparator >
 Unguarded loser tree, keeping only pointers to the elements in the tree structure. More...
 
struct  LoserTreePointerUnguardedBase< ValueType, Comparator >::Loser
 Internal representation of a loser tree player/node. More...
 
class  LoserTreePointerUnguarded< Stable, ValueType, Comparator >
 
class  LoserTreePointerUnguarded< true, ValueType, Comparator >
 
class  LoserTreeSwitch< Stable, ValueType, Comparator, Enable >
 
class  enable_if< sizeof(ValueType)<=2 *sizeof(size_t)>::type >
 
class  LoserTreeUnguardedSwitch< Stable, ValueType, Comparator, Enable >
 
class  enable_if< sizeof(ValueType)<=2 *sizeof(size_t)>::type >
 

Namespaces

namespace  tlx
 

Typedefs

template<bool Stable, typename ValueType , typename Comparator >
using LoserTree
 
template<bool Stable, typename ValueType , typename Comparator >
using LoserTreeUnguarded