mirror of
https://github.com/yuzu-emu/yuzu-android.git
synced 2025-06-11 07:38:04 -05:00
Common: Added MurmurHash3 hash function for general-purpose use.
This commit is contained in:
25
src/common/hash.h
Normal file
25
src/common/hash.h
Normal file
@ -0,0 +1,25 @@
|
||||
// Copyright 2015 Citra Emulator Project
|
||||
// Licensed under GPLv2 or any later version
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "common/common_types.h"
|
||||
|
||||
namespace Common {
|
||||
|
||||
void MurmurHash3_128(const void* key, int len, u32 seed, void* out);
|
||||
|
||||
/**
|
||||
* Computes a 64-bit hash over the specified block of data
|
||||
* @param data Block of data to compute hash over
|
||||
* @param len Length of data (in bytes) to compute hash over
|
||||
* @returns 64-bit hash value that was computed over the data block
|
||||
*/
|
||||
static inline u64 ComputeHash64(const void* data, int len) {
|
||||
u64 res[2];
|
||||
MurmurHash3_128(data, len, 0, res);
|
||||
return res[0];
|
||||
}
|
||||
|
||||
} // namespace Common
|
Reference in New Issue
Block a user