#include <ExternalSort.h>
Definition at line 27 of file ExternalSort.h.
Public Member Functions | |
| ExternalSort (Tools::IObjectStream &source, unsigned long bufferSize) | |
| ExternalSort (Tools::IObjectStream &source, Tools::IObjectComparator &comp, unsigned long bufferSize) | |
| virtual | ~ExternalSort () |
| virtual IObject * | getNext () |
| virtual bool | hasNext () throw () |
| virtual unsigned long | size () throw () |
| virtual void | rewind () |
Private Member Functions | |
| void | initializeRuns (std::deque< SmartPointer< TemporaryFile > > &runs) |
| void | mergeRuns () |
Private Attributes | |
| std::priority_queue< PQEntry *, std::vector< PQEntry * >, PQEntry::ascendingComparator > | m_buffer |
| unsigned long | m_cMaxBufferSize |
| bool | m_bFitsInBuffer |
| unsigned long | m_cNumberOfSortedRecords |
| unsigned long | m_cNumberOfReturnedRecords |
| IObjectStream * | m_pExternalSource |
| IObject * | m_pTemplateRecord |
| IObjectComparator * | m_pComparator |
| SmartPointer< TemporaryFile > | m_spSortedFile |
Classes | |
| class | PQEntry |
| Tools::ExternalSort::ExternalSort | ( | Tools::IObjectStream & | source, | |
| unsigned long | bufferSize | |||
| ) |
| Tools::ExternalSort::ExternalSort | ( | Tools::IObjectStream & | source, | |
| Tools::IObjectComparator & | comp, | |||
| unsigned long | bufferSize | |||
| ) |
| virtual Tools::ExternalSort::~ExternalSort | ( | ) | [virtual] |
| virtual IObject* Tools::ExternalSort::getNext | ( | ) | [virtual] |
| virtual bool Tools::ExternalSort::hasNext | ( | ) | throw () [virtual] |
| virtual unsigned long Tools::ExternalSort::size | ( | ) | throw () [virtual] |
| virtual void Tools::ExternalSort::rewind | ( | ) | [virtual] |
| void Tools::ExternalSort::initializeRuns | ( | std::deque< SmartPointer< TemporaryFile > > & | runs | ) | [private] |
| void Tools::ExternalSort::mergeRuns | ( | ) | [private] |
std::priority_queue< PQEntry*, std::vector<PQEntry*>, PQEntry::ascendingComparator > Tools::ExternalSort::m_buffer [private] |
Definition at line 79 of file ExternalSort.h.
unsigned long Tools::ExternalSort::m_cMaxBufferSize [private] |
Definition at line 81 of file ExternalSort.h.
bool Tools::ExternalSort::m_bFitsInBuffer [private] |
Definition at line 82 of file ExternalSort.h.
unsigned long Tools::ExternalSort::m_cNumberOfSortedRecords [private] |
Definition at line 83 of file ExternalSort.h.
unsigned long Tools::ExternalSort::m_cNumberOfReturnedRecords [private] |
Definition at line 84 of file ExternalSort.h.
IObjectStream* Tools::ExternalSort::m_pExternalSource [private] |
Definition at line 86 of file ExternalSort.h.
IObject* Tools::ExternalSort::m_pTemplateRecord [private] |
Definition at line 87 of file ExternalSort.h.
IObjectComparator* Tools::ExternalSort::m_pComparator [private] |
Definition at line 88 of file ExternalSort.h.
Definition at line 89 of file ExternalSort.h.
1.5.1