mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-06-09 18:22:33 +00:00
refactor: cryptography component
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstdlib>
|
||||
|
||||
namespace cryptography
|
||||
{
|
||||
class IHashFunction
|
||||
{
|
||||
public:
|
||||
IHashFunction() = default;
|
||||
virtual ~IHashFunction() = default;
|
||||
IHashFunction(const IHashFunction& other) = default;
|
||||
IHashFunction(IHashFunction&& other) noexcept = default;
|
||||
IHashFunction& operator=(const IHashFunction& other) = default;
|
||||
IHashFunction& operator=(IHashFunction&& other) noexcept = default;
|
||||
|
||||
virtual size_t GetHashSize() = 0;
|
||||
virtual void Init() = 0;
|
||||
virtual void Process(const void* input, size_t inputSize) = 0;
|
||||
virtual void Finish(void* hashBuffer) = 0;
|
||||
};
|
||||
} // namespace cryptography
|
||||
Reference in New Issue
Block a user