mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-07-09 13:59:41 +01:00
Cleanup: remove core/sort_func.hpp as it's not used anymore
This commit is contained in:
parent
48f99fd980
commit
ebd4f32d15
@ -742,7 +742,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp" />
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
||||||
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
||||||
<ClCompile Include="..\src\airport_gui.cpp" />
|
<ClCompile Include="..\src\airport_gui.cpp" />
|
||||||
|
@ -1314,9 +1314,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp">
|
|
||||||
<Filter>Core Source Code</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -742,7 +742,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp" />
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
||||||
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
||||||
<ClCompile Include="..\src\airport_gui.cpp" />
|
<ClCompile Include="..\src\airport_gui.cpp" />
|
||||||
|
@ -1314,9 +1314,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp">
|
|
||||||
<Filter>Core Source Code</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -742,7 +742,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
<ClInclude Include="..\src\core\smallmatrix_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
<ClInclude Include="..\src\core\smallstack_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
<ClInclude Include="..\src\core\smallvec_type.hpp" />
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp" />
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
<ClInclude Include="..\src\core\string_compare_type.hpp" />
|
||||||
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
<ClCompile Include="..\src\aircraft_gui.cpp" />
|
||||||
<ClCompile Include="..\src\airport_gui.cpp" />
|
<ClCompile Include="..\src\airport_gui.cpp" />
|
||||||
|
@ -1314,9 +1314,6 @@
|
|||||||
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
<ClInclude Include="..\src\core\smallvec_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\src\core\sort_func.hpp">
|
|
||||||
<Filter>Core Source Code</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
<ClInclude Include="..\src\core\string_compare_type.hpp">
|
||||||
<Filter>Core Source Code</Filter>
|
<Filter>Core Source Code</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -447,7 +447,6 @@ core/smallmap_type.hpp
|
|||||||
core/smallmatrix_type.hpp
|
core/smallmatrix_type.hpp
|
||||||
core/smallstack_type.hpp
|
core/smallstack_type.hpp
|
||||||
core/smallvec_type.hpp
|
core/smallvec_type.hpp
|
||||||
core/sort_func.hpp
|
|
||||||
core/string_compare_type.hpp
|
core/string_compare_type.hpp
|
||||||
|
|
||||||
# GUI Source Code
|
# GUI Source Code
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
#define SMALLMAP_TYPE_HPP
|
#define SMALLMAP_TYPE_HPP
|
||||||
|
|
||||||
#include "smallvec_type.hpp"
|
#include "smallvec_type.hpp"
|
||||||
#include "sort_func.hpp"
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Simple pair of data. Both types have to be POD ("Plain Old Data")!
|
* Simple pair of data. Both types have to be POD ("Plain Old Data")!
|
||||||
|
@ -1,89 +0,0 @@
|
|||||||
/* $Id$ */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This file is part of OpenTTD.
|
|
||||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
|
||||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/** @file sort_func.hpp Functions related to sorting operations. */
|
|
||||||
|
|
||||||
#ifndef SORT_FUNC_HPP
|
|
||||||
#define SORT_FUNC_HPP
|
|
||||||
|
|
||||||
#include "mem_func.hpp"
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Type safe qsort()
|
|
||||||
*
|
|
||||||
* @note Use this sort for irregular sorted data.
|
|
||||||
*
|
|
||||||
* @param base Pointer to the first element of the array to be sorted.
|
|
||||||
* @param num Number of elements in the array pointed by base.
|
|
||||||
* @param comparator Function that compares two elements.
|
|
||||||
* @param desc Sort descending.
|
|
||||||
*/
|
|
||||||
template <typename T>
|
|
||||||
static inline void QSortT(T *base, size_t num, int (CDECL *comparator)(const T*, const T*), bool desc = false)
|
|
||||||
{
|
|
||||||
if (num < 2) return;
|
|
||||||
|
|
||||||
qsort(base, num, sizeof(T), (int (CDECL *)(const void *, const void *))comparator);
|
|
||||||
|
|
||||||
if (desc) MemReverseT(base, num);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Type safe Gnome Sort.
|
|
||||||
*
|
|
||||||
* This is a slightly modified Gnome search. The basic
|
|
||||||
* Gnome search tries to sort already sorted list parts.
|
|
||||||
* The modification skips these.
|
|
||||||
*
|
|
||||||
* @note Use this sort for presorted / regular sorted data.
|
|
||||||
*
|
|
||||||
* @param base Pointer to the first element of the array to be sorted.
|
|
||||||
* @param num Number of elements in the array pointed by base.
|
|
||||||
* @param comparator Function that compares two elements.
|
|
||||||
* @param desc Sort descending.
|
|
||||||
*/
|
|
||||||
template <typename T>
|
|
||||||
static inline void GSortT(T *base, size_t num, int (CDECL *comparator)(const T*, const T*), bool desc = false)
|
|
||||||
{
|
|
||||||
if (num < 2) return;
|
|
||||||
|
|
||||||
assert(base != nullptr);
|
|
||||||
assert(comparator != nullptr);
|
|
||||||
|
|
||||||
T *a = base;
|
|
||||||
T *b = base + 1;
|
|
||||||
uint offset = 0;
|
|
||||||
|
|
||||||
while (num > 1) {
|
|
||||||
const int diff = comparator(a, b);
|
|
||||||
if ((!desc && diff <= 0) || (desc && diff >= 0)) {
|
|
||||||
if (offset != 0) {
|
|
||||||
/* Jump back to the last direction switch point */
|
|
||||||
a += offset;
|
|
||||||
b += offset;
|
|
||||||
offset = 0;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
a++;
|
|
||||||
b++;
|
|
||||||
num--;
|
|
||||||
} else {
|
|
||||||
Swap(*a, *b);
|
|
||||||
|
|
||||||
if (a == base) continue;
|
|
||||||
|
|
||||||
a--;
|
|
||||||
b--;
|
|
||||||
offset++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* SORT_FUNC_HPP */
|
|
@ -17,7 +17,6 @@
|
|||||||
#include "string_func.h"
|
#include "string_func.h"
|
||||||
#include "strings_func.h"
|
#include "strings_func.h"
|
||||||
#include "table/strings.h"
|
#include "table/strings.h"
|
||||||
#include "core/sort_func.hpp"
|
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
|
|
||||||
#include "safeguards.h"
|
#include "safeguards.h"
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
|
|
||||||
#include "core/enum_type.hpp"
|
#include "core/enum_type.hpp"
|
||||||
#include "core/bitmath_func.hpp"
|
#include "core/bitmath_func.hpp"
|
||||||
#include "core/sort_func.hpp"
|
|
||||||
#include "core/smallvec_type.hpp"
|
#include "core/smallvec_type.hpp"
|
||||||
#include "date_type.h"
|
#include "date_type.h"
|
||||||
|
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
#include "window_func.h"
|
#include "window_func.h"
|
||||||
#include "vehicle_base.h"
|
#include "vehicle_base.h"
|
||||||
#include "cmd_helper.h"
|
#include "cmd_helper.h"
|
||||||
#include "core/sort_func.hpp"
|
|
||||||
|
|
||||||
#include "table/strings.h"
|
#include "table/strings.h"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user