From 6d35b57058fd2ac00aef6d0feca9c123bf912f8e Mon Sep 17 00:00:00 2001 From: Tobias Pietzsch <tobias.pietzsch@gmail.com> Date: Tue, 10 Feb 2015 15:20:21 +0100 Subject: [PATCH] split afterEachPlane() out of LoopbackHeuristic --- src/main/java/bdv/ij/ExportImagePlusPlugIn.java | 13 +++++++++---- src/main/java/bdv/ij/ExportSpimFusionPlugIn.java | 6 +++--- src/main/java/bdv/ij/ExportSpimSequencePlugIn.java | 4 ++-- src/main/java/bdv/ij/export/Scripting.java | 2 +- .../ij/export/tiles/CellVoyagerDataExporter.java | 2 +- 5 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/main/java/bdv/ij/ExportImagePlusPlugIn.java b/src/main/java/bdv/ij/ExportImagePlusPlugIn.java index 7d06971..4b9510b 100644 --- a/src/main/java/bdv/ij/ExportImagePlusPlugIn.java +++ b/src/main/java/bdv/ij/ExportImagePlusPlugIn.java @@ -34,6 +34,7 @@ import bdv.export.ProgressWriter; import bdv.export.ProposeMipmaps; import bdv.export.SubTaskProgressWriter; import bdv.export.WriteSequenceToHdf5; +import bdv.export.WriteSequenceToHdf5.AfterEachPlane; import bdv.export.WriteSequenceToHdf5.LoopbackHeuristic; import bdv.ij.export.imgloader.ImagePlusImgLoader; import bdv.ij.export.imgloader.ImagePlusImgLoader.MinMaxOption; @@ -187,11 +188,14 @@ public class ExportImagePlusPlugIn implements PlugIn return false; } + }; + final AfterEachPlane afterEachPlane = new AfterEachPlane() + { @Override - public void afterEachPlane() + public void afterEachPlane( final boolean usedLoopBack ) { - if ( isVirtual ) + if ( !usedLoopBack && isVirtual ) { final long free = Runtime.getRuntime().freeMemory(); final long total = Runtime.getRuntime().totalMemory(); @@ -202,6 +206,7 @@ public class ExportImagePlusPlugIn implements PlugIn imgLoader.clearCache(); } } + }; final ArrayList< Partition > partitions; @@ -215,14 +220,14 @@ public class ExportImagePlusPlugIn implements PlugIn { final Partition partition = partitions.get( i ); final ProgressWriter p = new SubTaskProgressWriter( progressWriter, 0, 0.95 * i / partitions.size() ); - WriteSequenceToHdf5.writeHdf5PartitionFile( seq, perSetupExportMipmapInfo, params.deflate, partition, loopbackHeuristic, p ); + WriteSequenceToHdf5.writeHdf5PartitionFile( seq, perSetupExportMipmapInfo, params.deflate, partition, loopbackHeuristic, afterEachPlane, p ); } WriteSequenceToHdf5.writeHdf5PartitionLinkFile( seq, perSetupExportMipmapInfo, partitions, params.hdf5File ); } else { partitions = null; - WriteSequenceToHdf5.writeHdf5File( seq, perSetupExportMipmapInfo, params.deflate, params.hdf5File, loopbackHeuristic, new SubTaskProgressWriter( progressWriter, 0, 0.95 ) ); + WriteSequenceToHdf5.writeHdf5File( seq, perSetupExportMipmapInfo, params.deflate, params.hdf5File, loopbackHeuristic, afterEachPlane, new SubTaskProgressWriter( progressWriter, 0, 0.95 ) ); } // write xml sequence description diff --git a/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java b/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java index 911d42f..7fa3a50 100644 --- a/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java +++ b/src/main/java/bdv/ij/ExportSpimFusionPlugIn.java @@ -294,7 +294,7 @@ public class ExportSpimFusionPlugIn implements PlugIn for ( final Partition partition : newPartitions ) { final SubTaskProgressWriter subtaskProgress = new SubTaskProgressWriter( progress, complete, complete + completionStep ); - WriteSequenceToHdf5.writeHdf5PartitionFile( fusionSeq, perSetupExportMipmapInfo, params.deflate, partition, null, subtaskProgress ); + WriteSequenceToHdf5.writeHdf5PartitionFile( fusionSeq, perSetupExportMipmapInfo, params.deflate, partition, null, null, subtaskProgress ); complete += completionStep; } @@ -346,13 +346,13 @@ public class ExportSpimFusionPlugIn implements PlugIn { final Partition partition = partitions.get( i ); final ProgressWriter p = new SubTaskProgressWriter( progress, 0, 0.95 * i / partitions.size() ); - WriteSequenceToHdf5.writeHdf5PartitionFile( desc, perSetupExportMipmapInfo, params.deflate, partition, null, p ); + WriteSequenceToHdf5.writeHdf5PartitionFile( desc, perSetupExportMipmapInfo, params.deflate, partition, null, null, p ); } WriteSequenceToHdf5.writeHdf5PartitionLinkFile( desc, perSetupExportMipmapInfo, partitions, params.hdf5File ); } else { - WriteSequenceToHdf5.writeHdf5File( desc, perSetupExportMipmapInfo, params.deflate, params.hdf5File, null, new SubTaskProgressWriter( progress, 0, 0.95 ) ); + WriteSequenceToHdf5.writeHdf5File( desc, perSetupExportMipmapInfo, params.deflate, params.hdf5File, null, null, new SubTaskProgressWriter( progress, 0, 0.95 ) ); } // write xml file diff --git a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java index 29b7942..7a1747b 100644 --- a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java +++ b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java @@ -86,14 +86,14 @@ public class ExportSpimSequencePlugIn implements PlugIn { final Partition partition = partitions.get( i ); final ProgressWriter p = new SubTaskProgressWriter( progress, 0, 0.95 * i / partitions.size() ); - WriteSequenceToHdf5.writeHdf5PartitionFile( desc, perSetupExportMipmapInfo, params.deflate, partition, null, p ); + WriteSequenceToHdf5.writeHdf5PartitionFile( desc, perSetupExportMipmapInfo, params.deflate, partition, null, null, p ); } WriteSequenceToHdf5.writeHdf5PartitionLinkFile( desc, perSetupExportMipmapInfo, partitions, params.hdf5File ); } else { partitions = null; - WriteSequenceToHdf5.writeHdf5File( desc, perSetupExportMipmapInfo, params.deflate, params.hdf5File, null, new SubTaskProgressWriter( progress, 0, 0.95 ) ); + WriteSequenceToHdf5.writeHdf5File( desc, perSetupExportMipmapInfo, params.deflate, params.hdf5File, null, null, new SubTaskProgressWriter( progress, 0, 0.95 ) ); } final Hdf5ImageLoader loader = new Hdf5ImageLoader( params.hdf5File, partitions, null, false ); diff --git a/src/main/java/bdv/ij/export/Scripting.java b/src/main/java/bdv/ij/export/Scripting.java index 2f98561..dc8f190 100644 --- a/src/main/java/bdv/ij/export/Scripting.java +++ b/src/main/java/bdv/ij/export/Scripting.java @@ -203,7 +203,7 @@ public class Scripting public void writePartition( final int index ) { if ( index >= 0 && index < partitions.size() ) - WriteSequenceToHdf5.writeHdf5PartitionFile( spimData.getSequenceDescription(), perSetupMipmapInfo, deflate, partitions.get( index ), null, null ); + WriteSequenceToHdf5.writeHdf5PartitionFile( spimData.getSequenceDescription(), perSetupMipmapInfo, deflate, partitions.get( index ), null, null, null ); } public void writeXmlAndLinks() throws SpimDataException diff --git a/src/main/java/bdv/ij/export/tiles/CellVoyagerDataExporter.java b/src/main/java/bdv/ij/export/tiles/CellVoyagerDataExporter.java index b4b035c..069bdf9 100644 --- a/src/main/java/bdv/ij/export/tiles/CellVoyagerDataExporter.java +++ b/src/main/java/bdv/ij/export/tiles/CellVoyagerDataExporter.java @@ -315,7 +315,7 @@ public class CellVoyagerDataExporter * Write to HDF5 */ - WriteSequenceToHdf5.writeHdf5File( sequenceDescriptionHDF5, resolutions, chunks, true, hdf5File, null, progressWriter ); + WriteSequenceToHdf5.writeHdf5File( sequenceDescriptionHDF5, resolutions, chunks, true, hdf5File, null, null, progressWriter ); /* * write XML sequence description -- GitLab