Skip to content
Snippets Groups Projects
Commit 0a170f6b authored by Tobias Pietzsch's avatar Tobias Pietzsch
Browse files

fix wrt spim-data 2.0.0 API changes

parent b2d4e0df
Branches
Tags
No related merge requests found
package bdv.server; package bdv.server;
import bdv.BigDataViewer; import java.awt.image.BufferedImage;
import bdv.img.cache.CacheHints; import java.io.File;
import bdv.img.cache.LoadingStrategy; import java.io.IOException;
import bdv.img.cache.VolatileCell; import java.io.OutputStream;
import bdv.img.cache.VolatileGlobalCellCache; import java.io.PrintWriter;
import bdv.img.hdf5.Hdf5ImageLoader; import java.io.StringWriter;
import bdv.img.remote.AffineTransform3DJsonSerializer; import java.nio.file.Files;
import bdv.img.remote.RemoteImageLoader; import java.nio.file.Path;
import bdv.img.remote.RemoteImageLoaderMetaData; import java.nio.file.Paths;
import bdv.spimdata.SequenceDescriptionMinimal;
import bdv.spimdata.SpimDataMinimal;
import bdv.spimdata.XmlIoSpimDataMinimal;
import bdv.util.ThumbnailGenerator;
import com.google.gson.GsonBuilder; import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import mpicbg.spim.data.SpimDataException; import mpicbg.spim.data.SpimDataException;
import net.imglib2.img.basictypeaccess.volatiles.array.VolatileShortArray; import net.imglib2.img.basictypeaccess.volatiles.array.VolatileShortArray;
...@@ -29,21 +27,30 @@ import org.jdom2.input.SAXBuilder; ...@@ -29,21 +27,30 @@ import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format; import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter; import org.jdom2.output.XMLOutputter;
import javax.imageio.ImageIO; import bdv.BigDataViewer;
import javax.servlet.http.HttpServletRequest; import bdv.img.cache.CacheHints;
import javax.servlet.http.HttpServletResponse; import bdv.img.cache.LoadingStrategy;
import bdv.img.cache.VolatileCell;
import bdv.img.cache.VolatileGlobalCellCache;
import bdv.img.hdf5.Hdf5ImageLoader;
import bdv.img.hdf5.Hdf5VolatileShortArrayLoader;
import bdv.img.remote.AffineTransform3DJsonSerializer;
import bdv.img.remote.RemoteImageLoader;
import bdv.img.remote.RemoteImageLoaderMetaData;
import bdv.spimdata.SequenceDescriptionMinimal;
import bdv.spimdata.SpimDataMinimal;
import bdv.spimdata.XmlIoSpimDataMinimal;
import bdv.util.ThumbnailGenerator;
import java.awt.image.BufferedImage; import com.google.gson.GsonBuilder;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class CellHandler extends ContextHandler public class CellHandler extends ContextHandler
{ {
private static final org.eclipse.jetty.util.log.Logger LOG = Log.getLogger( CellHandler.class ); private static final org.eclipse.jetty.util.log.Logger LOG = Log.getLogger( CellHandler.class );
private final VolatileGlobalCellCache< VolatileShortArray > cache; private final VolatileGlobalCellCache cache;
private final Hdf5VolatileShortArrayLoader loader;
private final CacheHints cacheHints; private final CacheHints cacheHints;
...@@ -91,6 +98,7 @@ public class CellHandler extends ContextHandler ...@@ -91,6 +98,7 @@ public class CellHandler extends ContextHandler
final Hdf5ImageLoader imgLoader = ( Hdf5ImageLoader ) seq.getImgLoader(); final Hdf5ImageLoader imgLoader = ( Hdf5ImageLoader ) seq.getImgLoader();
cache = imgLoader.getCache(); cache = imgLoader.getCache();
loader = imgLoader.getShortArrayLoader();
cacheHints = new CacheHints( LoadingStrategy.BLOCKING, 0, false ); cacheHints = new CacheHints( LoadingStrategy.BLOCKING, 0, false );
// dataSetURL property is used for providing the XML file by replace // dataSetURL property is used for providing the XML file by replace
...@@ -136,7 +144,7 @@ public class CellHandler extends ContextHandler ...@@ -136,7 +144,7 @@ public class CellHandler extends ContextHandler
final int timepoint = Integer.parseInt( parts[ 2 ] ); final int timepoint = Integer.parseInt( parts[ 2 ] );
final int setup = Integer.parseInt( parts[ 3 ] ); final int setup = Integer.parseInt( parts[ 3 ] );
final int level = Integer.parseInt( parts[ 4 ] ); final int level = Integer.parseInt( parts[ 4 ] );
VolatileCell< VolatileShortArray > cell = cache.getGlobalIfCached( timepoint, setup, level, index, cacheHints ); VolatileCell< ? > cell = cache.getGlobalIfCached( timepoint, setup, level, index, cacheHints );
if ( cell == null ) if ( cell == null )
{ {
final int[] cellDims = new int[] { final int[] cellDims = new int[] {
...@@ -147,10 +155,11 @@ public class CellHandler extends ContextHandler ...@@ -147,10 +155,11 @@ public class CellHandler extends ContextHandler
Long.parseLong( parts[ 8 ] ), Long.parseLong( parts[ 8 ] ),
Long.parseLong( parts[ 9 ] ), Long.parseLong( parts[ 9 ] ),
Long.parseLong( parts[ 10 ] ) }; Long.parseLong( parts[ 10 ] ) };
cell = cache.createGlobal( cellDims, cellMin, timepoint, setup, level, index, cacheHints ); cell = cache.createGlobal( cellDims, cellMin, timepoint, setup, level, index, cacheHints, loader );
} }
final short[] data = cell.getData().getCurrentStorageArray(); @SuppressWarnings( "unchecked" )
final short[] data = ( ( VolatileCell< VolatileShortArray > ) cell ).getData().getCurrentStorageArray();
final byte[] buf = new byte[ 2 * data.length ]; final byte[] buf = new byte[ 2 * data.length ];
for ( int i = 0, j = 0; i < data.length; i++ ) for ( int i = 0, j = 0; i < data.length; i++ )
{ {
......
...@@ -26,6 +26,7 @@ import bdv.tools.transformation.TransformedSource; ...@@ -26,6 +26,7 @@ import bdv.tools.transformation.TransformedSource;
import bdv.tools.transformation.XmlIoTransformedSources; import bdv.tools.transformation.XmlIoTransformedSources;
import bdv.viewer.Source; import bdv.viewer.Source;
import bdv.viewer.SourceAndConverter; import bdv.viewer.SourceAndConverter;
import bdv.viewer.render.AccumulateProjectorARGB;
import bdv.viewer.render.MultiResolutionRenderer; import bdv.viewer.render.MultiResolutionRenderer;
import bdv.viewer.state.SourceGroup; import bdv.viewer.state.SourceGroup;
import bdv.viewer.state.SourceState; import bdv.viewer.state.SourceState;
...@@ -93,7 +94,7 @@ public class ThumbnailGenerator ...@@ -93,7 +94,7 @@ public class ThumbnailGenerator
} }
} }
final ThumbnailTarget renderTarget = new ThumbnailTarget(); final ThumbnailTarget renderTarget = new ThumbnailTarget();
new MultiResolutionRenderer( renderTarget, new PainterThread( null ), new double[] { 1 }, 0, false, 1, null, false, new Cache.Dummy() ).paint( state ); new MultiResolutionRenderer( renderTarget, new PainterThread( null ), new double[] { 1 }, 0, false, 1, null, false, AccumulateProjectorARGB.factory, new Cache.Dummy() ).paint( state );
return renderTarget.bi; return renderTarget.bi;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment