Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
MurmurHash3.hpp
1 //-----------------------------------------------------------------------------
2 // MurmurHash3 was written by Austin Appleby, and is placed in the public
3 // domain. The author hereby disclaims copyright to this source code.
4 
5 #ifndef _MURMURHASH3_H_
6 #define _MURMURHASH3_H_
7 
8 //-----------------------------------------------------------------------------
9 // Platform-specific functions and macros
10 
11 // Microsoft Visual Studio
12 
13 #if defined(_MSC_VER) && (_MSC_VER < 1600)
14 
15 typedef unsigned char uint8_t;
16 typedef unsigned int uint32_t;
17 typedef unsigned __int64 uint64_t;
18 
19 // Other compilers
20 
21 #else // defined(_MSC_VER)
22 
23 #include <stdint.h> // C99 assumption ?
24 
25 #endif // !defined(_MSC_VER)
26 
27 namespace Tpetra
28 {
29 
30 namespace Details
31 {
32 //-----------------------------------------------------------------------------
33 
34 void MurmurHash3_x86_32 ( const void * key, int len, uint32_t seed, void * out );
35 
36 void MurmurHash3_x86_128 ( const void * key, int len, uint32_t seed, void * out );
37 
38 void MurmurHash3_x64_128 ( const void * key, int len, uint32_t seed, void * out );
39 
40 }
41 
42 }
43 
44 //-----------------------------------------------------------------------------
45 
46 
47 #endif // _MURMURHASH3_H_