sort_func.hpp File Reference

Functions related to sorting operations. More...

#include "mem_func.hpp"

Go to the source code of this file.

Functions

template<typename T >
static FORCEINLINE void QSortT (T *base, uint num, int(CDECL *comparator)(const T *, const T *), bool desc=false)
 Type safe qsort().
template<typename T >
static void GSortT (T *base, uint num, int(CDECL *comparator)(const T *, const T *), bool desc=false)
 Type safe Gnome Sort.

Detailed Description

Functions related to sorting operations.

Definition in file sort_func.hpp.


Function Documentation

template<typename T >
static void GSortT ( T *  base,
uint  num,
int(CDECL *comparator)(const T *, const T *)  ,
bool  desc = false 
) [inline, static]

Type safe Gnome Sort.

This is a slightly modifyied Gnome search. The basic Gnome search trys to sort already sorted list parts. The modification skips these.

Note:
Use this sort for presorted / regular sorted data.
Parameters:
base Pointer to the first element of the array to be sorted.
num Number of elements in the array pointed by base.
comparator Function that compares two elements.
desc Sort descending.

Definition at line 52 of file sort_func.hpp.

References Swap().

Referenced by GUIList< const Industry * >::Sort().

template<typename T >
static FORCEINLINE void QSortT ( T *  base,
uint  num,
int(CDECL *comparator)(const T *, const T *)  ,
bool  desc = false 
) [inline, static]

Type safe qsort().

Note:
Use this sort for irregular sorted data.
Parameters:
base Pointer to the first element of the array to be sorted.
num Number of elements in the array pointed by base.
comparator Function that compares two elements.
desc Sort descending.

Definition at line 28 of file sort_func.hpp.

References MemReverseT().

Referenced by EngList_Sort(), EngList_SortPartial(), FiosGetFileList(), and GUIList< const Industry * >::Sort().


Generated on Fri Apr 30 21:55:30 2010 for OpenTTD by  doxygen 1.6.1