Blender
V2.93
source
blender
blenfont
intern
blf_util.c
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*
16
* The Original Code is Copyright (C) 2009 Blender Foundation.
17
* All rights reserved.
18
*/
19
26
#include <stdio.h>
27
#include <stdlib.h>
28
#include <string.h>
29
30
#include "
BLI_utildefines.h
"
31
32
#include "
blf_internal.h
"
33
34
unsigned
int
blf_next_p2
(
unsigned
int
x
)
35
{
36
x
-= 1;
37
x
|= (
x
>> 16);
38
x
|= (
x
>> 8);
39
x
|= (
x
>> 4);
40
x
|= (
x
>> 2);
41
x
|= (
x
>> 1);
42
x
+= 1;
43
return
x
;
44
}
45
46
unsigned
int
blf_hash
(
unsigned
int
val)
47
{
48
unsigned
int
key;
49
50
key = val;
51
key += ~(key << 16);
52
key ^= (key >> 5);
53
key += (key << 3);
54
key ^= (key >> 13);
55
key += ~(key << 9);
56
key ^= (key >> 17);
57
return
key % 257;
58
}
x
x
Definition:
BLI_expr_pylike_eval_test.cc:342
BLI_utildefines.h
blf_internal.h
blf_next_p2
unsigned int blf_next_p2(unsigned int x)
Definition:
blf_util.c:34
blf_hash
unsigned int blf_hash(unsigned int val)
Definition:
blf_util.c:46
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1