COMBINATORIAL_BLAS  1.6
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc > Class Template Reference

#include <funnel.h>

Classes

class  stream
 
class  stream_iterator
 

Public Types

enum  order_tag_ { order = Order, order = Order }
 
enum  mmth_tag_ { MAX_MERGE_TREE_HEIGHT = 16, MAX_MERGE_TREE_HEIGHT = 16 }
 
enum  order_tag_ { order = Order, order = Order }
 
enum  mmth_tag_ { MAX_MERGE_TREE_HEIGHT = 16, MAX_MERGE_TREE_HEIGHT = 16 }
 
typedef unsigned int order_t
 
typedef Splitter splitter
 
typedef std::iterator_traits< typename Alloc::pointer >::value_type value_type
 
typedef Alloc allocator
 
typedef Alloc::pointer iterator
 
typedef Pred predicate
 
typedef unsigned int order_t
 
typedef Splitter splitter
 
typedef std::iterator_traits< typename Alloc::pointer >::value_type value_type
 
typedef Alloc allocator
 
typedef Alloc::pointer iterator
 
typedef Pred predicate
 

Public Member Functions

 merge_tree (order_t k)
 
 merge_tree (order_t k, const allocator &alloc)
 
 ~merge_tree ()
 
void add_stream (typename Alloc::pointer begin, typename Alloc::pointer end)
 
stream_iterator begin ()
 
stream_iterator end ()
 
void reset ()
 
void set_refiller (const Refiller &r)
 
const Refiller & get_refiller () const
 
template<class FwIt >
FwIt empty (FwIt begin, FwIt end)
 
template<class OutIt >
OutIt empty (OutIt begin)
 
template<class FwIt >
FwIt operator() (FwIt begin, FwIt end)
 
template<class OutIt >
OutIt operator() (OutIt begin)
 
 merge_tree (order_t k)
 
 merge_tree (order_t k, const allocator &alloc)
 
 ~merge_tree ()
 
void add_stream (typename Alloc::pointer begin, typename Alloc::pointer end)
 
stream_iterator begin ()
 
stream_iterator end ()
 
void reset ()
 
void set_refiller (const Refiller &r)
 
const Refiller & get_refiller () const
 
template<class FwIt >
FwIt empty (FwIt begin, FwIt end)
 
template<class OutIt >
OutIt empty (OutIt begin)
 
template<class FwIt >
FwIt operator() (FwIt begin, FwIt end)
 
template<class OutIt >
OutIt operator() (OutIt begin)
 

Static Public Member Functions

static order_t min_order ()
 
static order_t min_order ()
 

Friends

class special_< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >
 
struct Node
 

Detailed Description

template<int Order, class Splitter, class Pred, class Refiller, class Alloc>
class iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >

Definition at line 284 of file funnel.h.

Member Typedef Documentation

◆ allocator [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Alloc iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::allocator

Definition at line 294 of file funnel.h.

◆ allocator [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Alloc iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::allocator

Definition at line 294 of file funnel.h.

◆ iterator [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Alloc::pointer iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::iterator

Definition at line 295 of file funnel.h.

◆ iterator [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Alloc::pointer iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::iterator

Definition at line 295 of file funnel.h.

◆ order_t [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef unsigned int iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::order_t

Definition at line 289 of file funnel.h.

◆ order_t [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef unsigned int iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::order_t

Definition at line 289 of file funnel.h.

◆ predicate [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Pred iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::predicate

Definition at line 296 of file funnel.h.

◆ predicate [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Pred iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::predicate

Definition at line 296 of file funnel.h.

◆ splitter [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Splitter iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::splitter

Definition at line 292 of file funnel.h.

◆ splitter [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef Splitter iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::splitter

Definition at line 292 of file funnel.h.

◆ value_type [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef std::iterator_traits<typename Alloc::pointer>::value_type iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::value_type

Definition at line 293 of file funnel.h.

◆ value_type [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
typedef std::iterator_traits<typename Alloc::pointer>::value_type iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::value_type

Definition at line 293 of file funnel.h.

Member Enumeration Documentation

◆ mmth_tag_ [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
enum iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::mmth_tag_
Enumerator
MAX_MERGE_TREE_HEIGHT 
MAX_MERGE_TREE_HEIGHT 

Definition at line 291 of file funnel.h.

◆ mmth_tag_ [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
enum iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::mmth_tag_
Enumerator
MAX_MERGE_TREE_HEIGHT 
MAX_MERGE_TREE_HEIGHT 

Definition at line 291 of file funnel.h.

◆ order_tag_ [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
enum iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::order_tag_
Enumerator
order 
order 

Definition at line 290 of file funnel.h.

◆ order_tag_ [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
enum iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::order_tag_
Enumerator
order 
order 

Definition at line 290 of file funnel.h.

Constructor & Destructor Documentation

◆ merge_tree() [1/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::merge_tree ( order_t  k)
inline

Definition at line 327 of file funnel.h.

◆ merge_tree() [2/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::merge_tree ( order_t  k,
const allocator alloc 
)
inline

Definition at line 329 of file funnel.h.

◆ ~merge_tree() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::~merge_tree ( )

◆ merge_tree() [3/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::merge_tree ( order_t  k)
inline

Definition at line 327 of file funnel.h.

◆ merge_tree() [4/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::merge_tree ( order_t  k,
const allocator alloc 
)
inline

Definition at line 329 of file funnel.h.

◆ ~merge_tree() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::~merge_tree ( )

Member Function Documentation

◆ add_stream() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::add_stream ( typename Alloc::pointer  begin,
typename Alloc::pointer  end 
)
inline

Definition at line 371 of file funnel.h.

◆ add_stream() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::add_stream ( typename Alloc::pointer  begin,
typename Alloc::pointer  end 
)
inline

Definition at line 371 of file funnel.h.

◆ begin() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
stream_iterator iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::begin ( )
inline

Definition at line 373 of file funnel.h.

◆ begin() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
stream_iterator iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::begin ( )
inline

Definition at line 373 of file funnel.h.

◆ empty() [1/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class FwIt >
FwIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::empty ( FwIt  begin,
FwIt  end 
)
inline

Definition at line 384 of file funnel.h.

◆ empty() [2/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class FwIt >
FwIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::empty ( FwIt  begin,
FwIt  end 
)
inline

Definition at line 384 of file funnel.h.

◆ empty() [3/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class OutIt >
OutIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::empty ( OutIt  begin)
inline

Definition at line 387 of file funnel.h.

◆ empty() [4/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class OutIt >
OutIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::empty ( OutIt  begin)
inline

Definition at line 387 of file funnel.h.

◆ end() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
stream_iterator iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::end ( )
inline

Definition at line 375 of file funnel.h.

◆ end() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
stream_iterator iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::end ( )
inline

Definition at line 375 of file funnel.h.

◆ get_refiller() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
const Refiller& iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::get_refiller ( ) const
inline

Definition at line 381 of file funnel.h.

◆ get_refiller() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
const Refiller& iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::get_refiller ( ) const
inline

Definition at line 381 of file funnel.h.

◆ min_order() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
static order_t iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::min_order ( )
inlinestatic

Definition at line 333 of file funnel.h.

◆ min_order() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
static order_t iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::min_order ( )
inlinestatic

Definition at line 333 of file funnel.h.

◆ operator()() [1/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class FwIt >
FwIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::operator() ( FwIt  begin,
FwIt  end 
)
inline

◆ operator()() [2/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class FwIt >
FwIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::operator() ( FwIt  begin,
FwIt  end 
)
inline

◆ operator()() [3/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class OutIt >
OutIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::operator() ( OutIt  begin)
inline

◆ operator()() [4/4]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
template<class OutIt >
OutIt iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::operator() ( OutIt  begin)
inline

◆ reset() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::reset ( )
inline

◆ reset() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::reset ( )
inline

◆ set_refiller() [1/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::set_refiller ( const Refiller &  r)
inline

Definition at line 379 of file funnel.h.

◆ set_refiller() [2/2]

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
void iosort::merge_tree< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >::set_refiller ( const Refiller &  r)
inline

Definition at line 379 of file funnel.h.

Friends And Related Function Documentation

◆ Node

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
Node
friend

Definition at line 300 of file funnel.h.

◆ special_< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >

template<int Order, class Splitter , class Pred , class Refiller , class Alloc >
friend class special_< typename Alloc::pointer, Order, Splitter, Pred, Refiller, Alloc >
friend

Definition at line 287 of file funnel.h.


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