2015-05-23 22:55:12 -06:00
|
|
|
// Copyright 2008 Dolphin Emulator Project
|
2021-07-04 19:22:19 -06:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
2008-12-07 21:46:09 -07:00
|
|
|
|
2014-02-10 11:54:46 -07:00
|
|
|
#pragma once
|
2008-12-07 21:46:09 -07:00
|
|
|
|
2014-02-19 20:11:52 -07:00
|
|
|
#include <cstddef>
|
2021-12-10 13:47:03 -07:00
|
|
|
#include <string_view>
|
2014-02-19 20:11:52 -07:00
|
|
|
|
2014-09-07 19:06:58 -06:00
|
|
|
#include "Common/CommonTypes.h"
|
2008-12-07 21:46:09 -07:00
|
|
|
|
2018-05-16 13:22:13 -06:00
|
|
|
namespace Common
|
|
|
|
{
|
2008-09-17 17:25:35 -06:00
|
|
|
u32 HashFletcher(const u8* data_u8, size_t length); // FAST. Length & 1 == 0.
|
2008-07-12 11:40:22 -06:00
|
|
|
u32 HashAdler32(const u8* data, size_t len); // Fairly accurate, slightly slower
|
2020-04-08 19:19:37 -06:00
|
|
|
u32 HashEctor(const u8* ptr, size_t length); // JUNK. DO NOT USE FOR NEW THINGS
|
2016-01-21 13:16:51 -07:00
|
|
|
u64 GetHash64(const u8* src, u32 len, u32 samples);
|
2014-12-22 14:35:08 -07:00
|
|
|
void SetHash64Function();
|
2021-12-10 13:47:03 -07:00
|
|
|
|
|
|
|
u32 ComputeCRC32(std::string_view data);
|
2021-12-10 14:34:40 -07:00
|
|
|
u32 ComputeCRC32(const u8* ptr, u32 length);
|
|
|
|
u32 StartCRC32();
|
|
|
|
u32 UpdateCRC32(u32 crc, const u8* ptr, u32 length);
|
2018-05-16 13:22:13 -06:00
|
|
|
} // namespace Common
|