Public Types | Public Member Functions | Protected Attributes

stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ > Class Template Reference
[Stream package]

Forms sorted runs of data from a stream. More...

#include <sort_stream.h>

Inheritance diagram for stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ >:
Inheritance graph
[legend]
Collaboration diagram for stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Cmp_ cmp_type
typedef Input_::value_type value_type
typedef typed_block
< BlockSize_, value_type > 
block_type
typedef
sort_helper::trigger_entry
< block_type
trigger_entry_type
typedef sorted_runs
< trigger_entry_type > 
sorted_runs_type

Public Member Functions

 basic_runs_creator (Input_ &i, Cmp_ c, unsigned_type memory_to_use)
 Create the object.
const sorted_runs_typeresult ()
 Returns the sorted runs object.

Protected Attributes

Input_ & input
Cmp_ cmp

Detailed Description

template<class Input_, class Cmp_, unsigned BlockSize_ = (2 * 1024 * 1024), class AllocStr_ = stxxl::RC>
class stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ >

Forms sorted runs of data from a stream.

Template Parameters:
Input_ type of the input stream
Cmp_ type of comparison object used for sorting the runs
BlockSize_ size of blocks used to store the runs (in bytes)
AllocStr_ functor that defines allocation strategy for the runs

Constructor & Destructor Documentation

template<class Input_ , class Cmp_ , unsigned BlockSize_ = (2 * 1024 * 1024), class AllocStr_ = stxxl::RC>
stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ >::basic_runs_creator ( Input_ &  i,
Cmp_  c,
unsigned_type  memory_to_use 
) [inline]

Create the object.

Parameters:
i input stream
c comparator object
memory_to_use memory amount that is allowed to used by the sorter in bytes

Member Function Documentation

template<class Input_ , class Cmp_ , unsigned BlockSize_ = (2 * 1024 * 1024), class AllocStr_ = stxxl::RC>
const sorted_runs_type& stream::basic_runs_creator< Input_, Cmp_, BlockSize_, AllocStr_ >::result (  )  [inline]

Returns the sorted runs object.

Returns:
Sorted runs object. The result is computed lazily, i.e. on the first call
Remarks:
Returned object is intended to be used by runs_merger object as input

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