1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-07-18 23:07:12 +02:00

Added external hashing library.

This commit is contained in:
Sandu Liviu Catalin
2015-11-01 10:02:15 +02:00
parent 6b16059547
commit 1431cb9e1e
17 changed files with 2832 additions and 0 deletions

28
external/Common/hash.h vendored Normal file
View File

@ -0,0 +1,28 @@
// //////////////////////////////////////////////////////////
// hash.h
// Copyright (c) 2014,2015 Stephan Brumme. All rights reserved.
// see http://create.stephan-brumme.com/disclaimer.html
//
#pragma once
#include <string>
/// abstract base class
class Hash
{
public:
/// compute hash of a memory block
virtual std::string operator()(const void* data, size_t numBytes) = 0;
/// compute hash of a string, excluding final zero
virtual std::string operator()(const std::string& text) = 0;
/// add arbitrary number of bytes
virtual void add(const void* data, size_t numBytes) = 0;
/// return latest hash as hex characters
virtual std::string getHash() = 0;
/// restart
virtual void reset() = 0;
};