From a4a7954218e0af7b1a62b27eceaf3291d938ea75 Mon Sep 17 00:00:00 2001 From: Stephane Dallongeville <stephane.dallongeville@pasteur.fr> Date: Fri, 25 Nov 2022 10:52:43 +0100 Subject: [PATCH] Updated to last kernel --- pom.xml | 2 +- .../sequenceblocks/convert/ConvertColor.java | 11 +++++-- .../sequenceblocks/convert/ConvertStack.java | 22 ++++++++----- .../sequenceblocks/convert/ConvertType.java | 9 +++++- .../creation/DuplicateSequence.java | 10 +++++- .../sequenceblocks/extract/CropSequence.java | 11 +++++-- .../extract/ExtractChannel.java | 13 ++++++-- .../extract/ExtractMultiChannels.java | 14 +++++++-- .../PositionedSequenceFileImporter.java | 2 +- .../loop/SequenceChannelBatch.java | 12 +++++-- .../loop/SequenceRegionBatch.java | 15 ++++++--- .../op/AdditiveFillSequence.java | 19 ++++++++---- .../sequenceblocks/op/FillInnerSequence.java | 17 +++++++--- .../sequenceblocks/op/FillOuterSequence.java | 31 ++++++++++++------- .../sequenceblocks/remove/RemoveChannel.java | 9 +++++- 15 files changed, 145 insertions(+), 52 deletions(-) diff --git a/pom.xml b/pom.xml index d077427..d1ad26a 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ </parent> <artifactId>sequence-blocks</artifactId> - <version>2.1.0</version> + <version>2.1.1</version> <name>SequenceBlocks</name> diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertColor.java b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertColor.java index 3347c03..1e4cf5b 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertColor.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertColor.java @@ -44,7 +44,14 @@ public class ConvertColor extends Plugin implements SequenceBlock, PluginBundled if (s == null) throw new VarException(EZseq, "Input sequence is null."); - varOut.setValue(convertColor(s, getImageType(EZtype.getValue()), EZlut.getValue())); + try + { + varOut.setValue(convertColor(s, getImageType(EZtype.getValue()), EZlut.getValue())); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override @@ -83,7 +90,7 @@ public class ConvertColor extends Plugin implements SequenceBlock, PluginBundled } } - public static Sequence convertColor(Sequence source, int imageType, LUT lut) + public static Sequence convertColor(Sequence source, int imageType, LUT lut) throws IllegalArgumentException, InterruptedException { final Sequence result = new Sequence(OMEUtil.createOMEXMLMetadata(source.getOMEXMLMetadata())); // image receiver diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertStack.java b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertStack.java index e7dbfdc..7eae544 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertStack.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertStack.java @@ -5,6 +5,7 @@ import icy.plugin.interface_.PluginBundled; import icy.sequence.Sequence; import icy.sequence.SequenceUtil; import plugins.adufour.blocks.tools.sequence.SequenceBlock; +import plugins.adufour.blocks.util.BlocksException; import plugins.adufour.blocks.util.VarList; import plugins.adufour.vars.lang.VarEnum; import plugins.adufour.vars.lang.VarSequence; @@ -32,13 +33,20 @@ public class ConvertStack extends Plugin implements SequenceBlock, PluginBundled if (in == null) throw new VarException(inputSequence, "Input sequence is null."); - // create a copy as we don't want to modify input - Sequence out = SequenceUtil.getCopy(in); - if (type.getValue() == TypeConversion.TIME) - SequenceUtil.convertToTime(out); - else - SequenceUtil.convertToStack(out); - outputSequence.setValue(out); + try + { + // create a copy as we don't want to modify input + Sequence out = SequenceUtil.getCopy(in); + if (type.getValue() == TypeConversion.TIME) + SequenceUtil.convertToTime(out); + else + SequenceUtil.convertToStack(out); + outputSequence.setValue(out); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertType.java b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertType.java index 0ec910c..48a11a4 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertType.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/convert/ConvertType.java @@ -31,7 +31,14 @@ public class ConvertType extends Plugin implements SequenceBlock, PluginLibrary, if (s == null) throw new VarException(inputSequence, "Input sequence is null."); - outputSequence.setValue(SequenceUtil.convertToType(s, type.getValue(), rescale.getValue().booleanValue())); + try + { + outputSequence.setValue(SequenceUtil.convertToType(s, type.getValue(), rescale.getValue().booleanValue())); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/creation/DuplicateSequence.java b/src/main/java/plugins/tprovoost/sequenceblocks/creation/DuplicateSequence.java index 3379d9d..dec05da 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/creation/DuplicateSequence.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/creation/DuplicateSequence.java @@ -25,7 +25,15 @@ public class DuplicateSequence extends Plugin implements SequenceBlock, PluginLi Sequence s = in.getValue(); if (s == null) throw new VarException(in, "Input Sequence is null."); - out.setValue(SequenceUtil.getCopy(s)); + + try + { + out.setValue(SequenceUtil.getCopy(s)); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/extract/CropSequence.java b/src/main/java/plugins/tprovoost/sequenceblocks/extract/CropSequence.java index 8379e58..334444f 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/extract/CropSequence.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/extract/CropSequence.java @@ -58,9 +58,16 @@ public class CropSequence extends Plugin implements SequenceBlock, PluginLibrary else rois = CollectionUtil.asList((ROI[]) obj); - final ROI roi = ROIUtil.merge(rois, BooleanOperator.OR); + try + { + final ROI roi = ROIUtil.merge(rois, BooleanOperator.OR); - outputSequence.setValue(SequenceUtil.getSubSequence(s, roi)); + outputSequence.setValue(SequenceUtil.getSubSequence(s, roi)); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractChannel.java b/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractChannel.java index 4ed5c38..e977e82 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractChannel.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractChannel.java @@ -32,10 +32,17 @@ public class ExtractChannel extends Plugin implements SequenceBlock, PluginLibra if (channel < 0 || channel >= s.getSizeC()) throw new VarException(channelIdx, "Channel index must be between 0 and " + (s.getSizeC() - 1)); - final Sequence res = SequenceUtil.extractChannel(s, channelIdx.getValue().intValue()); - res.setName(s.getName() + " - channel: " + channelIdx.getValue()); + try + { + final Sequence res = SequenceUtil.extractChannel(s, channelIdx.getValue().intValue()); + res.setName(s.getName() + " - channel: " + channelIdx.getValue()); - outputSequence.setValue(res); + outputSequence.setValue(res); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractMultiChannels.java b/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractMultiChannels.java index 56f892e..79d6aca 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractMultiChannels.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/extract/ExtractMultiChannels.java @@ -27,9 +27,17 @@ public class ExtractMultiChannels extends Plugin implements SequenceBlock, Plugi Sequence s = inputSequence.getValue(); if (s == null) throw new VarException(inputSequence, "Input sequence is null."); - Sequence res = SequenceUtil.extractChannels(s, channelIdx.getValue()); - res.setName(s.getName() + " - channel: " + channelIdx.getValue()); - outputSequence.setValue(res); + + try + { + Sequence res = SequenceUtil.extractChannels(s, channelIdx.getValue()); + res.setName(s.getName() + " - channel: " + channelIdx.getValue()); + outputSequence.setValue(res); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/importer/PositionedSequenceFileImporter.java b/src/main/java/plugins/tprovoost/sequenceblocks/importer/PositionedSequenceFileImporter.java index 75a25a7..946af74 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/importer/PositionedSequenceFileImporter.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/importer/PositionedSequenceFileImporter.java @@ -52,7 +52,7 @@ public class PositionedSequenceFileImporter positionedImporter.z, positionedImporter.c, positionedImporter.xyRegion); } - public OMEXMLMetadata getMetadata() throws UnsupportedFormatException, IOException + public OMEXMLMetadata getMetadata() throws UnsupportedFormatException, IOException, InterruptedException { // not yet defined --> take it from importer if possible if ((metadata == null) && (importer.getOpened() != null)) diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceChannelBatch.java b/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceChannelBatch.java index 763ccaa..ed0dbe8 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceChannelBatch.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceChannelBatch.java @@ -53,9 +53,15 @@ public class SequenceChannelBatch extends Batch implements SequenceBlock, Plugin @Override public void beforeIteration() { - // set result in element - element.setValue( - SequenceUtil.extractChannel(inputSequence.getValue(), getIterationCounter().getValue().intValue())); + try + { + // set result in element + element.setValue(SequenceUtil.extractChannel(inputSequence.getValue(), getIterationCounter().getValue().intValue())); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceRegionBatch.java b/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceRegionBatch.java index 8da2ca7..99fc20a 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceRegionBatch.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/loop/SequenceRegionBatch.java @@ -23,7 +23,7 @@ import plugins.tprovoost.sequenceblocks.SequenceBlocks; */ public class SequenceRegionBatch extends Batch implements SequenceBlock, PluginLibrary, PluginBundled { - // important to not initialize here (even with null) and create them in getBatchSource() and getBatchElement() + // important to not initialize here (even with null) and create them in getBatchSource() and getBatchElement() protected VarSequence inputSequence; protected VarSequence element; protected VarROIArray rois; @@ -91,9 +91,16 @@ public class SequenceRegionBatch extends Batch implements SequenceBlock, PluginL { // set result in element final ROI roi = rois.getValue()[getIterationCounter().getValue().intValue()]; - - element.setValue(SequenceUtil.getSubSequence(inputSequence.getValue(), roi)); - currentRoi.setValue(new ROI[] {roi}); + + try + { + element.setValue(SequenceUtil.getSubSequence(inputSequence.getValue(), roi)); + currentRoi.setValue(new ROI[] {roi}); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/op/AdditiveFillSequence.java b/src/main/java/plugins/tprovoost/sequenceblocks/op/AdditiveFillSequence.java index ec957c7..2ed300e 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/op/AdditiveFillSequence.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/op/AdditiveFillSequence.java @@ -36,21 +36,28 @@ public class AdditiveFillSequence extends Plugin implements SequenceBlock, Plugi if (sequence == null) throw new VarException(inputSequence, "Input sequence is null."); - if (rois.getValue() != null) + try { - for (ROI roi : rois.getValue()) - doAdditiveFill(sequence, roi, 1d); + if (rois.getValue() != null) + { + for (ROI roi : rois.getValue()) + doAdditiveFill(sequence, roi, 1d); - sequence.dataChanged(); + sequence.dataChanged(); + } + } + catch (InterruptedException e) + { + // nothing to do } } - public static void doAdditiveFill(Sequence sequence, ROI roi, double value) + public static void doAdditiveFill(Sequence sequence, ROI roi, double value) throws InterruptedException { doAdditiveFill(new SequenceDataIterator(sequence, roi), value); } - public static void doAdditiveFill(DataIterator it, double value) + public static void doAdditiveFill(DataIterator it, double value) throws InterruptedException { it.reset(); diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/op/FillInnerSequence.java b/src/main/java/plugins/tprovoost/sequenceblocks/op/FillInnerSequence.java index 39c7c63..7dc0f45 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/op/FillInnerSequence.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/op/FillInnerSequence.java @@ -36,14 +36,21 @@ public class FillInnerSequence extends Plugin implements SequenceBlock, PluginLi if (sequence == null) throw new VarException(inputSequence, "Input sequence is null."); - if (rois.getValue() != null) + try { - final double value = fillValue.getValue().doubleValue(); + if (rois.getValue() != null) + { + final double value = fillValue.getValue().doubleValue(); - for (ROI roi : rois.getValue()) - DataIteratorUtil.set(new SequenceDataIterator(sequence, roi), value); + for (ROI roi : rois.getValue()) + DataIteratorUtil.set(new SequenceDataIterator(sequence, roi), value); - sequence.dataChanged(); + sequence.dataChanged(); + } + } + catch (InterruptedException e) + { + // nothing to do } } diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/op/FillOuterSequence.java b/src/main/java/plugins/tprovoost/sequenceblocks/op/FillOuterSequence.java index 7e3faea..89d47ed 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/op/FillOuterSequence.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/op/FillOuterSequence.java @@ -40,25 +40,32 @@ public class FillOuterSequence extends Plugin implements SequenceBlock, PluginLi if (sequence == null) throw new VarException(inputSequence, "Input sequence is null."); - if (rois.getValue() != null) + try { - try + if (rois.getValue() != null) { - final ROI roiUnion = ROIUtil.merge(CollectionUtil.asList(rois.getValue()), BooleanOperator.OR); - final ROI roiSeq = new ROI5DStackRectangle(sequence.getBounds5D()); - final ROI roi = roiSeq.getSubtraction(roiUnion); + try + { + final ROI roiUnion = ROIUtil.merge(CollectionUtil.asList(rois.getValue()), BooleanOperator.OR); + final ROI roiSeq = new ROI5DStackRectangle(sequence.getBounds5D()); + final ROI roi = roiSeq.getSubtraction(roiUnion); - final double value = fillValue.getValue().doubleValue(); + final double value = fillValue.getValue().doubleValue(); - DataIteratorUtil.set(new SequenceDataIterator(sequence, roi), value); + DataIteratorUtil.set(new SequenceDataIterator(sequence, roi), value); - sequence.dataChanged(); - } - catch (UnsupportedOperationException e) - { - throw new VarException(rois, e.getMessage()); + sequence.dataChanged(); + } + catch (UnsupportedOperationException e) + { + throw new VarException(rois, e.getMessage()); + } } } + catch (InterruptedException e) + { + // nothing to do + } } @Override diff --git a/src/main/java/plugins/tprovoost/sequenceblocks/remove/RemoveChannel.java b/src/main/java/plugins/tprovoost/sequenceblocks/remove/RemoveChannel.java index 946b5cb..2fb63bf 100644 --- a/src/main/java/plugins/tprovoost/sequenceblocks/remove/RemoveChannel.java +++ b/src/main/java/plugins/tprovoost/sequenceblocks/remove/RemoveChannel.java @@ -35,7 +35,14 @@ public class RemoveChannel extends Plugin implements SequenceBlock, PluginLibrar if (channel < 0 || channel >= s.getSizeC()) throw new VarException(channelIdx, "Channel index must be between 0 and " + (s.getSizeC() - 1)); - SequenceUtil.removeChannel(s, channel); + try + { + SequenceUtil.removeChannel(s, channel); + } + catch (InterruptedException e) + { + // nothing to do + } } @Override -- GitLab