Blender V5.0
sort_utils.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2013 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
10
11#include "BLI_sort_utils.h" /* own include */
12
15};
16
19};
20
22 const void *sort_value;
23};
24
25int BLI_sortutil_cmp_float(const void *a_, const void *b_)
26{
27 const SortAnyByFloat *a = static_cast<const SortAnyByFloat *>(a_);
28 const SortAnyByFloat *b = static_cast<const SortAnyByFloat *>(b_);
29 if (a->sort_value > b->sort_value) {
30 return 1;
31 }
32 if (a->sort_value < b->sort_value) {
33 return -1;
34 }
35
36 return 0;
37}
38
39int BLI_sortutil_cmp_float_reverse(const void *a_, const void *b_)
40{
41 const SortAnyByFloat *a = static_cast<const SortAnyByFloat *>(a_);
42 const SortAnyByFloat *b = static_cast<const SortAnyByFloat *>(b_);
43 if (a->sort_value < b->sort_value) {
44 return 1;
45 }
46 if (a->sort_value > b->sort_value) {
47 return -1;
48 }
49
50 return 0;
51}
52
53int BLI_sortutil_cmp_int(const void *a_, const void *b_)
54{
55 const SortAnyByInt *a = static_cast<const SortAnyByInt *>(a_);
56 const SortAnyByInt *b = static_cast<const SortAnyByInt *>(b_);
57 if (a->sort_value > b->sort_value) {
58 return 1;
59 }
60 if (a->sort_value < b->sort_value) {
61 return -1;
62 }
63
64 return 0;
65}
66
67int BLI_sortutil_cmp_int_reverse(const void *a_, const void *b_)
68{
69 const SortAnyByInt *a = static_cast<const SortAnyByInt *>(a_);
70 const SortAnyByInt *b = static_cast<const SortAnyByInt *>(b_);
71 if (a->sort_value < b->sort_value) {
72 return 1;
73 }
74 if (a->sort_value > b->sort_value) {
75 return -1;
76 }
77
78 return 0;
79}
int BLI_sortutil_cmp_int_reverse(const void *a_, const void *b_)
Definition sort_utils.cc:67
int BLI_sortutil_cmp_int(const void *a_, const void *b_)
Definition sort_utils.cc:53
int BLI_sortutil_cmp_float(const void *a_, const void *b_)
Definition sort_utils.cc:25
int BLI_sortutil_cmp_float_reverse(const void *a_, const void *b_)
Definition sort_utils.cc:39
const void * sort_value
Definition sort_utils.cc:22