添加项目文件。
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
#pragma once
|
||||
#include <string>
|
||||
#include <rhash.h>
|
||||
#include <cstdint>
|
||||
#include <json/json.h>
|
||||
#pragma warning(disable : 4251)
|
||||
#pragma warning(disable : 4996)
|
||||
|
||||
#ifdef UOHASH_EXPORTS
|
||||
#define UOHASH_DLL_API __declspec(dllexport)
|
||||
#else
|
||||
#define UOHASH_DLL_API __declspec(dllimport)
|
||||
#ifdef _DEBUG
|
||||
#pragma comment(lib, "../x64/Debug/UOHashd.lib")
|
||||
#else
|
||||
#pragma comment(lib, "../x64/Release/UOHash.lib")
|
||||
#endif
|
||||
#endif
|
||||
|
||||
namespace uns
|
||||
{
|
||||
enum class UOHASH_DLL_API HashID : std::int64_t
|
||||
{
|
||||
CRC32 = RHASH_CRC32,
|
||||
MD4 = RHASH_MD4,
|
||||
MD5 = RHASH_MD5,
|
||||
SHA1 = RHASH_SHA1,
|
||||
TIGER = RHASH_TIGER,
|
||||
TTH = RHASH_TTH,
|
||||
BTIH = RHASH_BTIH,
|
||||
ED2K = RHASH_ED2K,
|
||||
AICH = RHASH_AICH,
|
||||
WHIRLPOOL = RHASH_WHIRLPOOL,
|
||||
RIPEMD160 = RHASH_RIPEMD160,
|
||||
GOST94 = RHASH_GOST94,
|
||||
GOST94_CRYPTOPRO = RHASH_GOST94_CRYPTOPRO,
|
||||
HAS160 = RHASH_HAS160,
|
||||
GOST12_256 = RHASH_GOST12_256,
|
||||
GOST12_512 = RHASH_GOST12_512,
|
||||
SHA224 = RHASH_SHA224,
|
||||
SHA256 = RHASH_SHA256,
|
||||
SHA384 = RHASH_SHA384,
|
||||
SHA512 = RHASH_SHA512,
|
||||
EDONR256 = RHASH_EDONR256,
|
||||
EDONR512 = RHASH_EDONR512,
|
||||
SHA3_224 = RHASH_SHA3_224,
|
||||
SHA3_256 = RHASH_SHA3_256,
|
||||
SHA3_384 = RHASH_SHA3_384,
|
||||
SHA3_512 = RHASH_SHA3_512,
|
||||
CRC32C = RHASH_CRC32C,
|
||||
SNEFRU128 = RHASH_SNEFRU128,
|
||||
SNEFRU256 = RHASH_SNEFRU256,
|
||||
BLAKE2S = RHASH_BLAKE2S,
|
||||
BLAKE2B = RHASH_BLAKE2B, //0x40000000
|
||||
__RHASH_MAX = 0b01111111111111111111111111111111,
|
||||
SHAKE128 = 0x80000000,
|
||||
SHAKE256 = 0x100000000,
|
||||
BASE16 = 0x200000000,
|
||||
BASE32 = 0x400000000,
|
||||
BASE32_HEX = 0x800000000,
|
||||
BASE36 = 0x1000000000,
|
||||
BASE58 = 0x2000000000,
|
||||
BASE62 = 0x4000000000,
|
||||
BASE64 = 0x8000000000,
|
||||
BASE64_URL = 0x10000000000,
|
||||
BASE85 = 0x20000000000,
|
||||
BASE91 = 0x40000000000,
|
||||
URL = 0x80000000000
|
||||
};
|
||||
|
||||
class UOHASH_DLL_API HashResult
|
||||
{
|
||||
private:
|
||||
bool success;
|
||||
std::string result;
|
||||
std::string last_error;
|
||||
public:
|
||||
HashResult();
|
||||
HashResult(std::string res);
|
||||
HashResult(const HashResult& obj);
|
||||
HashResult(bool succ, std::string res, std::string err);
|
||||
public:
|
||||
static HashResult Faliure(std::string str);
|
||||
static HashResult Success(std::string str);
|
||||
public:
|
||||
std::string GetResult();
|
||||
std::string GetLastError();
|
||||
std::string EncodeJsonString(bool unicode = false, bool styled = false);
|
||||
public:
|
||||
operator bool();
|
||||
operator std::string();
|
||||
operator Json::Value();
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user