[*] Recrinkle posters

This commit is contained in:
Reece Wilson 2022-03-23 19:32:33 +00:00
parent c912013ddb
commit 55857f4158
14 changed files with 36 additions and 49 deletions

View File

@ -1,10 +0,0 @@
/***
Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: CE.hpp
Date: 2021-6-10
Author: Reece
***/
#pragma once
#include "fnv1.hpp"

View File

@ -1,35 +0,0 @@
/***
Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: fnv1.hpp
Date: 2021-6-10
Author: Reece
***/
#pragma once
namespace Aurora::Hashing
{
namespace CE
{
constexpr AuUInt64 kFnv1MagicVal64 = 0xcbf29ce484222325;
constexpr AuUInt64 kFnv1MagicPrime64 = 0x100000001b3;
inline constexpr AuUInt64 fnv1a(const char *const str, const AuUInt64 value = kFnv1MagicVal64) noexcept
{
return (str[0] == '\0') ? value : fnv1a(&str[1], (value ^ AuUInt64(str[0])) * kFnv1MagicPrime64);
}
inline constexpr AuUInt32 fnv1a_trunc(const char *const str) noexcept
{
return static_cast<AuUInt32>(fnv1a(str));
}
constexpr AuUInt32 kFnv1MagicVal32 = 0x811c9dc5;
constexpr AuUInt32 kFnv1MagicPrime32 = 0x01000193;
inline constexpr AuUInt32 fnv1a_32(const char *const str, const AuUInt32 value = kFnv1MagicVal32) noexcept
{
return (str[0] == '\0') ? value : fnv1a_32(&str[1], (value ^ AuUInt32(str[0])) * kFnv1MagicPrime32);
}
}
}

View File

@ -9,6 +9,4 @@
#include "EHashType.hpp" #include "EHashType.hpp"
#include "HashStream.hpp" #include "HashStream.hpp"
#include "Digests.hpp" #include "Digests.hpp"
#include "CE/fnv1.hpp"

View File

@ -3,6 +3,9 @@
File: auContainerUtils.hpp File: auContainerUtils.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,8 @@
File: auFNV1Utils.hpp File: auFNV1Utils.hpp
Date: 2022-3-23 Date: 2022-3-23
File: fnv1.hpp
Date: 2021-6-10
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -136,6 +136,10 @@ struct AuEnableHashCodeOnData
{ {
AuUInt HashCode() const AuUInt HashCode() const
{ {
return AuFnv1aType(*AuStaticCast<T>(this)); #if defined(AURORA_IS_32BIT)
return AuFnv1a32Runtime(AuStaticCast<T>(this), sizeof(T));
#else
return AuFnv1a64Runtime(AuStaticCast<T>(this), sizeof(T));
#endif
} }
}; };

View File

@ -3,6 +3,9 @@
File: auMemory.hpp File: auMemory.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auMemoryModel.hpp File: auMemoryModel.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auStringUtils.hpp File: auStringUtils.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once
@ -114,6 +117,7 @@ static auline AuString AuToString(const T &obj)
// locale independent and better optimized! // locale independent and better optimized!
return fmt::format("{}", obj); return fmt::format("{}", obj);
#else #else
// TODO: to_chars (locale independent)
return AURORA_RUNTIME_TO_STRING(obj); return AURORA_RUNTIME_TO_STRING(obj);
#endif #endif
} }

View File

@ -3,6 +3,9 @@
File: auTuple.hpp File: auTuple.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auTupleUtils.hpp File: auTupleUtils.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auTypes.hpp File: auTypes.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auVector.hpp File: auVector.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once

View File

@ -3,6 +3,9 @@
File: auWin32Utils.hpp File: auWin32Utils.hpp
Date: 2022-2-1 Date: 2022-2-1
File: AuroraUtils.hpp
File: auROXTLUtils.hpp
Date: 2021-6-9
Author: Reece Author: Reece
***/ ***/
#pragma once #pragma once