From 160cc1d630e171dbef4660ded8863b017089d512 Mon Sep 17 00:00:00 2001
From: Tobias Pietzsch <tobias.pietzsch@gmail.com>
Date: Fri, 22 Aug 2014 16:14:29 +0200
Subject: [PATCH] contruct ImgOpener with a Context that works (for now) in
 both Eclipse and Fiji

---
 .../java/bdv/ij/ExportSpimSequencePlugIn.java |  4 ++++
 .../ij/export/imgloader/StackImageLoader.java | 22 ++++++-------------
 2 files changed, 11 insertions(+), 15 deletions(-)

diff --git a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java
index d20bb2a..7b1e2e5 100644
--- a/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java
+++ b/src/main/java/bdv/ij/ExportSpimSequencePlugIn.java
@@ -709,6 +709,10 @@ public class ExportSpimSequencePlugIn implements PlugIn
 
 	public static void main( final String[] args )
 	{
+		Bead_Registration.spimDataDirectory = "/Users/pietzsch/workspace/data/openspim";
+		Bead_Registration.fileNamePattern = "spim_TL{tt}_Angle{a}.tif";
+		Bead_Registration.timepoints = "0";
+		Bead_Registration.angles = "0";
 		new ExportSpimSequencePlugIn().run( null );
 	}
 }
diff --git a/src/main/java/bdv/ij/export/imgloader/StackImageLoader.java b/src/main/java/bdv/ij/export/imgloader/StackImageLoader.java
index f252d7e..4f47291 100644
--- a/src/main/java/bdv/ij/export/imgloader/StackImageLoader.java
+++ b/src/main/java/bdv/ij/export/imgloader/StackImageLoader.java
@@ -1,7 +1,7 @@
 package bdv.ij.export.imgloader;
 
-import ij.IJ;
 import ij.ImagePlus;
+import io.scif.SCIFIOService;
 import io.scif.img.ImgIOException;
 import io.scif.img.ImgOpener;
 
@@ -21,6 +21,10 @@ import net.imglib2.meta.ImgPlus;
 import net.imglib2.type.numeric.integer.UnsignedByteType;
 import net.imglib2.type.numeric.integer.UnsignedShortType;
 
+import org.scijava.Context;
+import org.scijava.app.AppService;
+import org.scijava.app.StatusService;
+
 
 /**
  * This {@link ImgLoader} loads images that represent a 3D stack in a single
@@ -33,7 +37,7 @@ import net.imglib2.type.numeric.integer.UnsignedShortType;
  */
 public class StackImageLoader implements BasicImgLoader< UnsignedShortType >
 {
-	private ImgOpener opener;
+	private final ImgOpener opener;
 
 	private final ArrayImgFactory< UnsignedShortType > factory;
 
@@ -47,14 +51,7 @@ public class StackImageLoader implements BasicImgLoader< UnsignedShortType >
 	{
 		this.filenames = filenames;
 		this.useImageJOpener = useImageJOpener;
-		try
-		{
-			opener = new ImgOpener();
-		}
-		catch ( final Exception e )
-		{
-			e.printStackTrace();
-		}
+		opener = useImageJOpener ? null : new ImgOpener( new Context( SCIFIOService.class, AppService.class, StatusService.class ) );
 		factory = new ArrayImgFactory< UnsignedShortType >();
 		type = new UnsignedShortType();
 	}
@@ -65,11 +62,6 @@ public class StackImageLoader implements BasicImgLoader< UnsignedShortType >
 		final String fn = filenames.get( view );
 		if ( useImageJOpener )
 		{
-			if ( opener == null )
-			{
-				IJ.showMessage( "Error", "Error: Could not create io.scif.img.ImgOpener" );
-				return null;
-			}
 			final ImagePlus imp = new ImagePlus( fn );
 			if ( imp.getType() == ImagePlus.GRAY16 )
 				return new ImgPlus< UnsignedShortType >( ImageJFunctions.wrapShort( imp ) );
-- 
GitLab