From 723796a0a0fed8e5b8c3222b1c90443189113098 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Mon, 11 Jan 2021 15:24:11 -0500 Subject: LZ4 compression support (#1654) * #include an absolute path didn't work - because paths were taken to always be relative. * Testing out use of lz4. * Added ICompressionSystem, and LZ4 implementation. * Add support for deflate compression. Simplify compression interface - to make more easily work across apis. * WIP on CompressedFileSystem. * ImplicitDirectoryCollector * SubStringIndexMap - > StringSliceIndexMap. * WIP save stdlib in different containers. * Support for different archive types for stdlib. * Fix project. * CompressedFileSystem -> ArchiveFileSystem. Added CompressionSystemType::None * Added ArchiveFileSystem * Fix problem RiffFileSystem load withoug compression system. * Test archive types. Improve diagnostic message. * Fix typo in testing file system archives. * Split out archive detection. * Fix gcc warning issue. * Fix warning. * RiffArchiveFileSystem -> RiffFileSystem Co-authored-by: Tim Foley --- source/core/slang-riff.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'source/core/slang-riff.cpp') diff --git a/source/core/slang-riff.cpp b/source/core/slang-riff.cpp index d64cd89c7..482c35e81 100644 --- a/source/core/slang-riff.cpp +++ b/source/core/slang-riff.cpp @@ -851,6 +851,13 @@ void RiffContainer::endChunk() SLANG_ASSERT(isChunkOk(chunk)); } +void RiffContainer::addDataChunk(FourCC dataFourCC, const void* data, size_t dataSizeInBytes) +{ + startChunk(Chunk::Kind::Data, dataFourCC); + write(data, dataSizeInBytes); + endChunk(); +} + void RiffContainer::setPayload(Data* data, const void* payload, size_t size) { // We must be in a data chunk -- cgit v1.2.3