TPIE

2362a60
tpie::serialization_sorter< T, pred_t > Class Template Reference

Public Types

typedef std::shared_ptr
< serialization_sorter
ptr
 

Public Member Functions

 serialization_sorter (memory_size_type minimumItemSize=sizeof(T), pred_t pred=pred_t())
 
void set_phase_1_files (memory_size_type f1)
 
void set_phase_2_files (memory_size_type f2)
 
void set_phase_3_files (memory_size_type f3)
 
void set_available_files (memory_size_type f)
 Calculate parameters from given amount of files. More...
 
void set_available_files (memory_size_type f1, memory_size_type f2, memory_size_type f3)
 Calculate parameters from given amount of files. More...
 
void set_phase_1_memory (memory_size_type m1)
 
void set_phase_2_memory (memory_size_type m2)
 
void set_phase_3_memory (memory_size_type m3)
 
void set_available_memory (memory_size_type m)
 
void set_available_memory (memory_size_type m1, memory_size_type m2, memory_size_type m3)
 
memory_size_type actual_memory_phase_3 ()
 
void set_owner (pipelining::node *n)
 
void begin ()
 
void push (const T &item)
 
void end ()
 
stream_size_type item_count ()
 
void evacuate ()
 
memory_size_type evacuated_memory_usage () const
 
bool is_merge_runs_free ()
 
void merge_runs ()
 
pull ()
 
bool can_pull ()
 

Static Public Member Functions

static memory_size_type minimum_memory_phase_1 ()
 
static memory_size_type minimum_memory_phase_2 ()
 
static memory_size_type minimum_memory_phase_3 ()
 

Detailed Description

template<typename T, typename pred_t = std::less<T>>
class tpie::serialization_sorter< T, pred_t >

Definition at line 501 of file serialization_sorter.h.

Member Function Documentation

template<typename T, typename pred_t = std::less<T>>
void tpie::serialization_sorter< T, pred_t >::set_available_files ( memory_size_type  f)
inline

Calculate parameters from given amount of files.

Parameters
fFiles available for phase 1, 2 and 3

Definition at line 588 of file serialization_sorter.h.

References tpie::serialization_bits::sort_parameters::filesPhase1, tpie::serialization_bits::sort_parameters::filesPhase2, and tpie::serialization_bits::sort_parameters::filesPhase3.

588  {
589  m_params.filesPhase1 = m_params.filesPhase2 = m_params.filesPhase3 = f;
590  check_not_started();
591  }
memory_size_type filesPhase3
files available during output phase.
memory_size_type filesPhase2
files available while merging runs.
memory_size_type filesPhase1
files available while forming sorted runs.
template<typename T, typename pred_t = std::less<T>>
void tpie::serialization_sorter< T, pred_t >::set_available_files ( memory_size_type  f1,
memory_size_type  f2,
memory_size_type  f3 
)
inline

Calculate parameters from given amount of files.

Parameters
f1Files available for phase 1
f2Files available for phase 2
f3Files available for phase 3

Definition at line 599 of file serialization_sorter.h.

References tpie::serialization_bits::sort_parameters::filesPhase1, tpie::serialization_bits::sort_parameters::filesPhase2, and tpie::serialization_bits::sort_parameters::filesPhase3.

599  {
600  m_params.filesPhase1 = f1;
601  m_params.filesPhase2 = f2;
602  m_params.filesPhase3 = f3;
603  check_not_started();
604  }
memory_size_type filesPhase3
files available during output phase.
memory_size_type filesPhase2
files available while merging runs.
memory_size_type filesPhase1
files available while forming sorted runs.

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