From 6b866325ed073a28618f9047858c0d29bb4ceb0a Mon Sep 17 00:00:00 2001 From: Vojtech Moravec <vojtech.moravec.st@vsb.cz> Date: Fri, 23 Oct 2020 13:16:31 +0200 Subject: [PATCH] Add one file, missed in last commit. --- .../qcmp/cli/CompressionOptionsCLIParser.java | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/main/java/cz/it4i/qcmp/cli/CompressionOptionsCLIParser.java b/src/main/java/cz/it4i/qcmp/cli/CompressionOptionsCLIParser.java index c36aef2..960de94 100644 --- a/src/main/java/cz/it4i/qcmp/cli/CompressionOptionsCLIParser.java +++ b/src/main/java/cz/it4i/qcmp/cli/CompressionOptionsCLIParser.java @@ -3,6 +3,7 @@ package cz.it4i.qcmp.cli; import cz.it4i.qcmp.ScifioWrapper; import cz.it4i.qcmp.compression.CompressionOptions; import cz.it4i.qcmp.compression.CompressorDecompressorBase; +import cz.it4i.qcmp.data.HyperStackDimensions; import cz.it4i.qcmp.data.Range; import cz.it4i.qcmp.data.V2i; import cz.it4i.qcmp.data.V3i; @@ -178,18 +179,17 @@ public class CompressionOptionsCLIParser extends CompressionOptions implements C return; } - final FileInputData fileInputData = new FileInputData(inputFileArguments[0]); - setInputDataInfo(fileInputData); // Decompress and Inspect methods doesn't require additional file information. if ((method == ProgramMethod.Decompress) || (method == ProgramMethod.InspectFile)) { + setInputDataInfo(new FileInputData(inputFileArguments[0], null)); return; } // Check if input file exists. - if (!new File(fileInputData.getFilePath()).exists()) { + if (!new File(inputFileArguments[0]).exists()) { parseErrorOccurred = true; - errorBuilder.append("Input file doesn't exist. Provided path: '").append(fileInputData.getFilePath()).append("'\n"); + errorBuilder.append("Input file doesn't exist. Provided path: '").append(inputFileArguments[0]).append("'\n"); return; } @@ -215,6 +215,7 @@ public class CompressionOptionsCLIParser extends CompressionOptions implements C return; } + final int imageCount = reader.getImageCount(); if (imageCount != 1) { parseErrorOccurred = true; @@ -251,11 +252,9 @@ public class CompressionOptionsCLIParser extends CompressionOptions implements C return; } - getInputDataInfo().setDimension(new V3i( - (int) planeWidth, - (int) planeHeight, - (int) planeCount - )); + setInputDataInfo(new FileInputData(inputFileArguments[0], new HyperStackDimensions((int) planeWidth, + (int) planeHeight, + (int) planeCount))); if (inputFileArguments.length > 1) { parseInputFilePlaneOptions(errorBuilder, inputFileArguments, 1); @@ -272,10 +271,10 @@ public class CompressionOptionsCLIParser extends CompressionOptions implements C return; } getInputDataInfo().setDataLoaderType(InputData.DataLoaderType.RawDataLoader); - final Optional<V3i> parsedImageDims = ParseUtils.tryParseV3i(inputFileArguments[1], 'x'); - if (parsedImageDims.isPresent()) { - getInputDataInfo().setDimension(parsedImageDims.get()); + final Optional<HyperStackDimensions> parsedDatasetDims = ParseUtils.tryParseHyperStackDimensions(inputFileArguments[1], 'x'); + if (parsedDatasetDims.isPresent()) { + setInputDataInfo(new FileInputData(inputFileArguments[0], parsedDatasetDims.get())); } else { parseErrorOccurred = true; errorBuilder.append("Failed to parse image dimensions of format DxDxD. Got: ") -- GitLab