hash.h 790 B

1234567891011121314151617
  1. // Copyright 2013 Dolphin Emulator Project
  2. // Licensed under GPLv2
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include "common/common.h"
  6. u32 HashFletcher(const u8* data_u8, size_t length); // FAST. Length & 1 == 0.
  7. u32 HashAdler32(const u8* data, size_t len); // Fairly accurate, slightly slower
  8. u32 HashFNV(const u8* ptr, int length); // Another fast and decent hash
  9. u32 HashEctor(const u8* ptr, int length); // JUNK. DO NOT USE FOR NEW THINGS
  10. u64 GetCRC32(const u8 *src, int len, u32 samples); // SSE4.2 version of CRC32
  11. u64 GetHashHiresTexture(const u8 *src, int len, u32 samples);
  12. u64 GetMurmurHash3(const u8 *src, int len, u32 samples);
  13. u64 GetHash64(const u8 *src, int len, u32 samples);
  14. void SetHash64Function(bool useHiresTextures);