1
0
Fork 0
Commit Graph

460 Commits

Author SHA1 Message Date
chylex a46cb9457f Remove unused methods from Category and HuffmanNode 2019-03-09 03:16:14 +01:00
chylex 607cfeba64 Include category in BlockTypeInfo to refactor serialization contexts 2019-03-09 03:07:37 +01:00
chylex f7c8e203a9 Update to .NET Standard 2.0 2019-03-09 02:39:44 +01:00
chylex b08283a8db Improve markers for complex Huffman trees 2019-03-09 01:22:58 +01:00
chylex f98f386b4c Add MarkedBitReader.ReadValue w/ huffman tree and value mapper parameters 2019-03-09 01:22:44 +01:00
chylex c57a0a4dcf Add dialog w/ bit stream marker labels 2019-03-07 16:15:23 +01:00
chylex a76a9d0c81 Redesign main window (sizes, splitters, allow resizing/hiding Brotli file structure panel) 2019-03-07 04:00:22 +01:00
chylex fcd6b3847c Update main window to display bit count and output length 2019-03-07 03:14:44 +01:00
chylex 285612a1bd Cleanup unused methods and imports 2019-03-07 02:55:48 +01:00
chylex 84c97d40c6 Implement bit stream UI marker coloring and navigation 2019-03-07 02:40:18 +01:00
chylex f47ca970ce Replace RicherTextBox with the FCTB library 2019-03-06 14:24:59 +01:00
chylex ddd0a270de Remove option to limit displayed output length 2019-03-06 14:01:44 +01:00
chylex cce96a2567 Fix massive performance issues with MarkerNode 2019-03-06 12:51:50 +01:00
chylex 95acb299e1 Implement repeat/skip codes in complex Huffman trees 2019-03-04 17:34:41 +01:00
chylex 5a6f4b2ede Implement encoding of RLE and IMTF in Brotli context maps 2019-03-04 11:57:30 +01:00
chylex 3d511172a7 Implement markers for all Brotli deserializers 2019-03-03 19:53:42 +01:00
chylex 46eb57428c Update ToString (DistanceCode, ComplexLengthCode, HuffmanGenerator.Entry) 2019-03-03 19:53:42 +01:00
chylex 6e20da13de Enable deserialization with markers in BrotliFileStructure 2019-03-03 18:47:00 +01:00
chylex 7044313e04 Add MarkedBitReader and MarkedBitSerializer w/ a few marker types 2019-03-03 18:47:00 +01:00
chylex 07d96290b7 Add Literal to represent literal bytes 2019-03-03 17:27:27 +01:00
chylex 03c5f040f6 Redo all Equals/GetHashCode/ToString & add a few missing ones 2019-03-02 11:02:36 +01:00
chylex 95162a60ad Add RichTextBox extensions (pause redraws, scroll to caret centered) 2019-02-25 15:52:28 +01:00
chylex 2c251eb4be Add a basic marker node system 2019-02-25 15:49:23 +01:00
chylex 577786223e Allow BitReader to be wrapped and extended 2019-02-08 10:52:07 +01:00
chylex 86e25692b8 Implement Brotli compressed meta-block contents and insert&copy command serialization 2019-02-08 10:52:07 +01:00
chylex cf11a7c0f1 Implement Brotli block-switch command serialization & block tracking 2019-02-08 10:52:07 +01:00
chylex 5ffb4bf0be Implement Brotli compressed meta-block header serialization 2019-02-08 10:52:07 +01:00
chylex a7b6d7047d Implement Brotli block type and block length code serialization 2019-02-08 09:24:51 +01:00
chylex 648d9b7393 Refactor bit stream & output panel into a separate Control 2019-02-07 03:13:56 +01:00
chylex 66b8795135 Reassign ISLAST bit on meta-blocks after modifying their structure 2019-02-07 02:01:10 +01:00
chylex 5a2a10ae99 Fix wrong data type in AlphabetSize unit tests 2019-02-07 01:57:12 +01:00
chylex dcb2f9c99d Add AnyCPU because Visual Studio still can't figure out 64bit UserControls 2019-02-07 01:53:13 +01:00
chylex f3295167b8 Implement basic serialization for Brotli context maps 2018-12-29 02:53:45 +01:00
chylex f81568d95a Make AlphabetSize.BitsPerSymbol return a byte & add default max tree depth constant 2018-12-29 02:48:38 +01:00
chylex 5d1823acb0 Implement Brotli distance code and distance value serialization 2018-12-28 22:49:01 +01:00
chylex f23359ccd5 Implement Brotli insert&copy length code alphabet and length serialization 2018-12-15 02:20:46 +01:00
chylex 791f31e2d9 Implement basic serialization for Brotli Huffman trees w/ unit tests 2018-12-15 02:01:23 +01:00
chylex 0add08098e Implement limited-depth Huffman tree generation from frequency map w/ unit tests 2018-12-14 21:46:03 +01:00
chylex 693109a90a Enforce symbol order when genering Huffman trees from bit counts 2018-12-14 21:45:44 +01:00
chylex a8dcf45861 Add utilities for Brotli insert&copy command code categories 2018-12-14 18:36:58 +01:00
chylex b3d81c67f1 Add PriorityQueue 2018-12-14 11:55:22 +01:00
chylex 24efbdfe74 Fix extra bit when writing padded empty meta-block header 2018-12-14 06:04:16 +01:00
chylex 895414df2d Fix BitStream getting misaligned when adding many whole bytes & fix typo 2018-12-13 22:29:28 +01:00
chylex 4ce1554e4b Fix missing bit when writing compressed meta-block header 2018-12-13 14:39:09 +01:00
chylex a3e4983bc5 Implement Move-to-front & inverse transformation w/ unit tests 2018-12-12 23:05:23 +01:00
chylex 235f3684a3 Fix BitStream.Add causing every 63rd bit to be zero w/ new unit tests 2018-12-06 08:00:35 +01:00
chylex 95b7f5448e Update main window to display original bits & output when loading existing file 2018-12-06 07:22:28 +01:00
chylex 9dcacebfb7 Finish implementing global (de)compression state 2018-12-06 07:07:50 +01:00
chylex 377302e3fc Add resizing support to the main window 2018-12-05 21:18:09 +01:00
chylex 6b98e1c2c3 Add default Brotli dictionary file as an embedded resource 2018-12-04 17:24:48 +01:00