1f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
2f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// MurmurHash3 was written by Austin Appleby, and is placed in the public
3f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// domain. The author hereby disclaims copyright to this source code.
4f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
5f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#ifndef _MURMURHASH3_H_
6f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#define _MURMURHASH3_H_
7f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
8f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
9f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// Platform-specific functions and macros
10f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
11f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// Microsoft Visual Studio
12f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
13b52816cce35fbfdda7d56c533cf53d15201513e3aappleby@google.com#if defined(_MSC_VER) && (_MSC_VER < 1600)
14f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
15f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comtypedef unsigned char uint8_t;
16b52816cce35fbfdda7d56c533cf53d15201513e3aappleby@google.comtypedef unsigned int uint32_t;
17f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comtypedef unsigned __int64 uint64_t;
18f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
19f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// Other compilers
20f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
21f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#else	// defined(_MSC_VER)
22f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
23f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#include <stdint.h>
24f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
25f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#endif // !defined(_MSC_VER)
26f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
27f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
28f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
29f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comvoid MurmurHash3_x86_32  ( const void * key, int len, uint32_t seed, void * out );
30f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
31f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comvoid MurmurHash3_x86_128 ( const void * key, int len, uint32_t seed, void * out );
32f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
33f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comvoid MurmurHash3_x64_128 ( const void * key, int len, uint32_t seed, void * out );
34f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
35f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
36f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
37f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#endif // _MURMURHASH3_H_
38