1f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
2f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com// MurmurHash2 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 _MURMURHASH2_H_
6f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#define _MURMURHASH2_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.comuint32_t MurmurHash2        ( const void * key, int len, uint32_t seed );
30f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comuint64_t MurmurHash64A      ( const void * key, int len, uint64_t seed );
31f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comuint64_t MurmurHash64B      ( const void * key, int len, uint64_t seed );
32f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comuint32_t MurmurHash2A       ( const void * key, int len, uint32_t seed );
33f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comuint32_t MurmurHashNeutral2 ( const void * key, int len, uint32_t seed );
34f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.comuint32_t MurmurHashAligned2 ( const void * key, int len, uint32_t seed );
35f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
36f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com//-----------------------------------------------------------------------------
37f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
38f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com#endif // _MURMURHASH2_H_
39f3b789787b93945c974e2cc517b7dc352b28354etanjent@gmail.com
40