From cbb9ed149517cf781bf21bff4650d7d01bd6d567 Mon Sep 17 00:00:00 2001 From: Dan Engelbrecht Date: Fri, 30 Aug 2024 11:26:42 +0200 Subject: meta info store (#75) - Feature: Added option `--gc-cache-attachment-store` which caches referenced attachments in cache records on disk for faster GC - default is `false` - Feature: Added option `--gc-projectstore-attachment-store` which caches referenced attachments in project store oplogs on disk for faster GC - default is `false` --- src/zenutil/referencemetadata.cpp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/zenutil/referencemetadata.cpp (limited to 'src/zenutil/referencemetadata.cpp') diff --git a/src/zenutil/referencemetadata.cpp b/src/zenutil/referencemetadata.cpp new file mode 100644 index 000000000..bbcafcfba --- /dev/null +++ b/src/zenutil/referencemetadata.cpp @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#include +////////////////////////////////////////////////////////////////////////// + +#include + +namespace zen { + +uint32_t +ReferenceMetaDataHeader::ComputeChecksum() const +{ + return XXH32(&Magic, sizeof(ReferenceMetaDataHeader) - sizeof(uint32_t), 0xC0C0'BABA); +} + +bool +ReferenceMetaDataHeader::IsValid(uint32_t ExpectedMagic) const +{ + if (Magic != ExpectedMagic) + { + return false; + } + + if (Checksum != ComputeChecksum()) + { + return false; + } + + return true; +} + +} // namespace zen -- cgit v1.2.3