From 47aa203fb2e11e341d27b6a395fb5bc48ee85986 Mon Sep 17 00:00:00 2001
From: Vojtech Moravec <vojtech.moravec.st@vsb.cz>
Date: Sat, 25 Jan 2020 11:02:41 +0100
Subject: [PATCH] Fixed cache file naming.

---
 .../azgracompress/compression/VQImageCompressor.java     | 2 +-
 .../quantization/QuantizationValueCache.java             | 9 ++++++---
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/main/java/azgracompress/compression/VQImageCompressor.java b/src/main/java/azgracompress/compression/VQImageCompressor.java
index ffb6c22..de00719 100644
--- a/src/main/java/azgracompress/compression/VQImageCompressor.java
+++ b/src/main/java/azgracompress/compression/VQImageCompressor.java
@@ -228,7 +228,7 @@ public class VQImageCompressor extends CompressorDecompressorBase implements IIm
         Log("Saving cache file to %s", options.getOutputFile());
         QuantizationValueCache cache = new QuantizationValueCache(options.getOutputFile());
         try {
-            cache.saveQuantizationValues(options.getInputFile(), lbgResult.getCodebook());
+            cache.saveQuantizationValues(options.getInputFile(), lbgResult.getCodebook(), options.getVectorDimension());
         } catch (IOException e) {
             throw new ImageCompressionException("Unable to write cache.", e);
         }
diff --git a/src/main/java/azgracompress/quantization/QuantizationValueCache.java b/src/main/java/azgracompress/quantization/QuantizationValueCache.java
index fca4c95..78797c3 100644
--- a/src/main/java/azgracompress/quantization/QuantizationValueCache.java
+++ b/src/main/java/azgracompress/quantization/QuantizationValueCache.java
@@ -1,5 +1,6 @@
 package azgracompress.quantization;
 
+import azgracompress.data.V2i;
 import azgracompress.quantization.vector.CodebookEntry;
 
 import java.io.*;
@@ -50,10 +51,12 @@ public class QuantizationValueCache {
         }
     }
 
-    public void saveQuantizationValues(final String trainFile, final CodebookEntry[] entries) throws IOException {
+    public void saveQuantizationValues(final String trainFile,
+                                       final CodebookEntry[] entries,
+                                       final V2i qVecDims) throws IOException {
         final int codebookSize = entries.length;
-        final int entryWidth = entries[0].getWidth();
-        final int entryHeight = entries[0].getHeight();
+        final int entryWidth = qVecDims.getX();
+        final int entryHeight = qVecDims.getY();
         final String cacheFile = getCacheFileForVectorValues(trainFile,
                                                              codebookSize,
                                                              entryWidth,
-- 
GitLab