mirror of
https://github.com/SabreTools/BinaryObjectScanner.git
synced 2026-07-28 19:53:01 +00:00
Create new Compression library (nw)
This commit is contained in:
32
BurnOutSharp.Compression/BurnOutSharp.Compression.csproj
Normal file
32
BurnOutSharp.Compression/BurnOutSharp.Compression.csproj
Normal file
@@ -0,0 +1,32 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net6.0</TargetFrameworks>
|
||||
<Title>BurnOutSharp.Compression</Title>
|
||||
<AssemblyName>BurnOutSharp.Compression</AssemblyName>
|
||||
<Authors>Matt Nadareski</Authors>
|
||||
<Product>BurnOutSharp</Product>
|
||||
<Copyright>Copyright (c)2022 Matt Nadareski</Copyright>
|
||||
<RepositoryUrl>https://github.com/mnadareski/BurnOutSharp</RepositoryUrl>
|
||||
<Version>2.5</Version>
|
||||
<AssemblyVersion>2.5</AssemblyVersion>
|
||||
<FileVersion>2.5</FileVersion>
|
||||
<IncludeSource>true</IncludeSource>
|
||||
<IncludeSymbols>true</IncludeSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="SharpCompress" Version="0.32.2" />
|
||||
<PackageReference Include="SharpZipLib" Version="1.4.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BurnOutSharp.Models\BurnOutSharp.Models.csproj" />
|
||||
<ProjectReference Include="..\BurnOutSharp.Utilities\BurnOutSharp.Utilities.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
10
BurnOutSharp.Compression/LZ.cs
Normal file
10
BurnOutSharp.Compression/LZ.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using BurnOutSharp.Models.Compression.LZ;
|
||||
|
||||
namespace BurnOutSharp.Compression
|
||||
{
|
||||
/// <see href="https://github.com/wine-mirror/wine/blob/master/dlls/kernel32/lzexpand.c"/>
|
||||
public class LZ
|
||||
{
|
||||
// TODO: Implement LZ decompression
|
||||
}
|
||||
}
|
||||
9
BurnOutSharp.Compression/LZX.cs
Normal file
9
BurnOutSharp.Compression/LZX.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using BurnOutSharp.Models.Compression.LZX;
|
||||
|
||||
namespace BurnOutSharp.Compression
|
||||
{
|
||||
public class LZX
|
||||
{
|
||||
// TODO: Implement LZX decompression
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using BurnOutSharp.Models.Compression.MSZIP;
|
||||
using BurnOutSharp.Utilities;
|
||||
using ICSharpCode.SharpZipLib.Zip.Compression;
|
||||
|
||||
namespace BurnOutSharp.Wrappers
|
||||
namespace BurnOutSharp.Compression
|
||||
{
|
||||
public partial class MicrosoftCabinet : WrapperBase
|
||||
public class MSZIP
|
||||
{
|
||||
// TODO: Implement MSZIP decompression
|
||||
// The below is a first attempt at implementation that is not working. It likely needs to be replaced by
|
||||
// a zlib wrapper and/or a proper implementation
|
||||
|
||||
#region Constants
|
||||
|
||||
/// <summary>
|
||||
@@ -609,4 +614,4 @@ namespace BurnOutSharp.Wrappers
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
}
|
||||
9
BurnOutSharp.Compression/Quantum.cs
Normal file
9
BurnOutSharp.Compression/Quantum.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using BurnOutSharp.Models.Compression.Quantum;
|
||||
|
||||
namespace BurnOutSharp.Compression
|
||||
{
|
||||
public class Quantum
|
||||
{
|
||||
// TODO: Implement Quantum decompression
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,7 @@
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BurnOutSharp.ASN1\BurnOutSharp.ASN1.csproj" />
|
||||
<ProjectReference Include="..\BurnOutSharp.Builders\BurnOutSharp.Builders.csproj" />
|
||||
<ProjectReference Include="..\BurnOutSharp.Compression\BurnOutSharp.Compression.csproj" />
|
||||
<ProjectReference Include="..\BurnOutSharp.Models\BurnOutSharp.Models.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
namespace BurnOutSharp.Wrappers
|
||||
{
|
||||
public partial class MicrosoftCabinet : WrapperBase
|
||||
{
|
||||
// TODO: Implement LZX decompression
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
namespace BurnOutSharp.Wrappers
|
||||
{
|
||||
public partial class MicrosoftCabinet : WrapperBase
|
||||
{
|
||||
// TODO: Implement Quantum decompression
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@ using System.Linq;
|
||||
|
||||
namespace BurnOutSharp.Wrappers
|
||||
{
|
||||
public partial class MicrosoftCabinet : WrapperBase
|
||||
public class MicrosoftCabinet : WrapperBase
|
||||
{
|
||||
#region Pass-Through Properties
|
||||
|
||||
@@ -229,7 +229,8 @@ namespace BurnOutSharp.Wrappers
|
||||
decompressed = dataBlock.CompressedData;
|
||||
break;
|
||||
case Models.MicrosoftCabinet.CompressionType.TYPE_MSZIP:
|
||||
decompressed = DecompressMSZIPData(dataBlock.CompressedData);
|
||||
// TODO: UNIMPLEMENTED
|
||||
decompressed = dataBlock.CompressedData;
|
||||
break;
|
||||
case Models.MicrosoftCabinet.CompressionType.TYPE_QUANTUM:
|
||||
// TODO: UNIMPLEMENTED
|
||||
|
||||
@@ -36,6 +36,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BurnOutSharp.Utilities", "B
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BurnOutSharp.ASN1", "BurnOutSharp.ASN1\BurnOutSharp.ASN1.csproj", "{D5407F3A-236C-45B5-BE3A-1505412DCB22}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BurnOutSharp.Compression", "BurnOutSharp.Compression\BurnOutSharp.Compression.csproj", "{B55206B2-58FD-4A47-AADC-74982FEA8FAD}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@@ -90,6 +92,10 @@ Global
|
||||
{D5407F3A-236C-45B5-BE3A-1505412DCB22}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D5407F3A-236C-45B5-BE3A-1505412DCB22}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D5407F3A-236C-45B5-BE3A-1505412DCB22}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B55206B2-58FD-4A47-AADC-74982FEA8FAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B55206B2-58FD-4A47-AADC-74982FEA8FAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B55206B2-58FD-4A47-AADC-74982FEA8FAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B55206B2-58FD-4A47-AADC-74982FEA8FAD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
@@ -65,6 +65,10 @@
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\BurnOutSharp.Compression\BurnOutSharp.Compression.csproj">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\BurnOutSharp.Matching\BurnOutSharp.Matching.csproj">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
|
||||
Reference in New Issue
Block a user