1
0
Fork 0
Commit Graph

460 Commits

Author SHA1 Message Date
chylex 52d435dece Fix invalid complex Huffman tree length codes generated for incomplete trees 2019-05-24 14:11:52 +02:00
chylex 6baa782fb9 Make DistanceParameters a readonly struct 2019-05-23 16:24:40 +02:00
chylex 82f212a4b8 Add marker for Brotli block-switch type value 2019-05-23 15:30:12 +02:00
chylex 1370231216 Add utility Set methods to ContextMap builder 2019-05-23 15:29:43 +02:00
chylex 74969f8c92 Implement Brotli block-switch command builder 2019-05-23 15:28:30 +02:00
chylex cbc0beb952 Update BrotliCalc reserialize/rebuild test command to include diffs 2019-05-23 14:21:22 +02:00
chylex f289bb2660 Update CompressedMetaBlockBuilder to use FrequencyLists 2019-05-23 14:18:55 +02:00
chylex b90240c180 Update HuffmanTree.FromSymbols to use FrequencyList 2019-05-23 14:15:21 +02:00
chylex 2bfa048532 Add FrequencyList collection 2019-05-23 14:11:00 +02:00
chylex 62b5236455 Remove category parameter from CategoryMap.Select 2019-05-23 13:11:52 +02:00
chylex 9ab0520997 Determine BlockSwitchCommand type codes during serialization instead of storing them 2019-05-23 11:10:59 +02:00
chylex ea0453f3cb Implement workaround for incomplete Huffman tree generation 2019-05-22 21:52:28 +02:00
chylex 909fd91fe9 Add BrotliCalc command to calculate size after reserialize/rebuild 2019-05-22 21:22:27 +02:00
chylex 3051373f5d Add a few properties to BrotliFile in BrotliCalc 2019-05-22 21:16:47 +02:00
chylex 3130065a7b Refactor BrotliCalc CSV table code & fix CSV formatting 2019-05-22 09:47:33 +02:00
chylex 35038985ce Refactor BrotliCalc batch utilities (quality handling, file order) 2019-05-22 09:47:33 +02:00
chylex 978725d5db Change Range.ToString 2019-05-22 08:52:12 +02:00
chylex fbe0b299bd Decrease minimum size of GUIs 2019-05-21 13:18:07 +02:00
chylex 6bb29382ec Update exe & dll metadata 2019-05-20 12:12:19 +02:00
chylex e39ddf5e27 Make ContextMap builder clone the final array 2019-05-20 09:48:05 +02:00
chylex 683b939f07 Allow manually selecting text in MarkedTextBox 2019-05-20 09:47:20 +02:00
chylex 667d934f53 Allow disabling marker generation in the GUI 2019-05-20 09:31:31 +02:00
chylex 3f90278047 Move encoder and transformer GUI menu items to top-level 2019-05-20 00:25:11 +02:00
chylex a6c4632803 Add Brotli encoder that greedily searches for copies 2019-05-19 23:47:41 +02:00
chylex 7e7b58e533 Fix broken implicit distance code 0 and dictionary distances in CompressedMetaBlockBuilder 2019-05-19 23:18:04 +02:00
chylex 5148994de4 Fix incorrect RingBuffer state after cloning 2019-05-19 22:46:31 +02:00
chylex 7e2d8e0f7a Fix GUI tab index & tweak menu item names 2019-05-19 10:00:45 +02:00
chylex 6712cc325d Add option to hide the Marker Info panel 2019-05-19 09:56:12 +02:00
chylex 8ab371b0e4 Move marker info GUI into the main window & redesign 2019-05-19 09:52:07 +02:00
chylex 7ed6662ac0 Update GUI (sizes, margins, and disable 'Add Meta-Block (Compressed)' button) 2019-05-19 07:05:48 +02:00
chylex f219a35fe0 Add Brotli transformer that tests all distance parameter values 2019-05-18 08:49:42 +02:00
chylex 529784857f Fix Windows Forms designer being shit again 2019-05-18 04:46:25 +02:00
chylex 48244aff50 Move Brotli encoders and transformers off-thread in BrotliBuilder 2019-05-18 04:23:26 +02:00
chylex d4fa203f4f Add MetaBlockSizeTracker utility for meta-block size minimization 2019-05-18 02:41:44 +02:00
chylex e349cf112b Move byte array slicing/cloning into a utility CollectionHelper class 2019-05-18 00:38:48 +02:00
chylex 35ca0e1fb8 Move existing Brotli encoder & transformer implementations to BrotliImpl 2019-05-17 23:06:41 +02:00
chylex ddef90648c Add BrotliImpl project for Brotli encoder & transformer algorithms 2019-05-17 23:06:30 +02:00
chylex bc708a3646 Keep only AnyCPU w/ 32bit disabled, fix mismatched C# version settings 2019-05-17 20:05:22 +02:00
chylex 143b79aecf Add convenience method for dictionary references to CompressedMetaBlockBuilder 2019-05-17 18:54:55 +02:00
chylex dee0e6c240 Add DictionaryIndexEntry & refactor index serialization 2019-05-17 18:54:55 +02:00
chylex 417b2b0eed Add IMultiTrie, move tries to different namespace, revert trie value sorting 2019-05-17 18:54:55 +02:00
chylex 34d801a70b Slightly improve strategy for picking Brotli distance codes 2019-05-17 06:35:26 +02:00
chylex edae3a9161 Add BrotliCalc command to generate Brotli dictionary index 2019-05-17 04:49:16 +02:00
chylex 304fa1dd7c Implement Brotli dictionary trie serialization & include word length in index 2019-05-17 03:41:10 +02:00
chylex 94263295b5 Abstract out stuff from MultiTrie into a base class 2019-05-17 02:38:50 +02:00
chylex 1eacd31096 Implement BrotliCalc ICommand argument count checking 2019-05-16 22:25:26 +02:00
chylex 78052590df Split Brotli distance codes into multiple files 2019-05-16 21:01:18 +02:00
chylex 768f2e9ac0 Work on Brotli component validation, constants, and minor refactoring 2019-05-16 19:09:58 +02:00
chylex 632f94eef9 Refactor Brotli element construction to guard mutability 2019-05-16 18:25:30 +02:00
chylex d85badda47 Add a few TODOs 2019-04-22 22:59:15 +02:00