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

MultiResolutionRenderer: use RequestRepaint instead of PainterThread

parent f59a4773
No related branches found
No related tags found
No related merge requests found
...@@ -74,7 +74,6 @@ import net.imglib2.img.array.ArrayImgs; ...@@ -74,7 +74,6 @@ import net.imglib2.img.array.ArrayImgs;
import net.imglib2.realtransform.AffineTransform3D; import net.imglib2.realtransform.AffineTransform3D;
import net.imglib2.type.numeric.ARGBType; import net.imglib2.type.numeric.ARGBType;
import bdv.viewer.OverlayRenderer; import bdv.viewer.OverlayRenderer;
import net.imglib2.ui.PainterThread;
import bdv.viewer.render.RenderTarget; import bdv.viewer.render.RenderTarget;
import net.imglib2.util.LinAlgHelpers; import net.imglib2.util.LinAlgHelpers;
...@@ -369,7 +368,7 @@ public class RecordMaxProjectionDialog extends JDialog implements OverlayRendere ...@@ -369,7 +368,7 @@ public class RecordMaxProjectionDialog extends JDialog implements OverlayRendere
} }
final MyTarget target = new MyTarget(); final MyTarget target = new MyTarget();
final MultiResolutionRenderer renderer = new MultiResolutionRenderer( final MultiResolutionRenderer renderer = new MultiResolutionRenderer(
target, new PainterThread( null ), new double[] { 1 }, 0, 1, null, false, target, () -> {}, new double[] { 1 }, 0, 1, null, false,
viewer.getOptionValues().getAccumulateProjectorFactory(), new CacheControl.Dummy() ); viewer.getOptionValues().getAccumulateProjectorFactory(), new CacheControl.Dummy() );
progressWriter.setProgress( 0 ); progressWriter.setProgress( 0 );
for ( int timepoint = minTimepointIndex; timepoint <= maxTimepointIndex; ++timepoint ) for ( int timepoint = minTimepointIndex; timepoint <= maxTimepointIndex; ++timepoint )
......
...@@ -68,7 +68,6 @@ import javax.swing.event.ChangeEvent; ...@@ -68,7 +68,6 @@ import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener; import javax.swing.event.ChangeListener;
import net.imglib2.realtransform.AffineTransform3D; import net.imglib2.realtransform.AffineTransform3D;
import bdv.viewer.OverlayRenderer; import bdv.viewer.OverlayRenderer;
import net.imglib2.ui.PainterThread;
import bdv.viewer.render.RenderTarget; import bdv.viewer.render.RenderTarget;
public class RecordMovieDialog extends JDialog implements OverlayRenderer public class RecordMovieDialog extends JDialog implements OverlayRenderer
...@@ -303,7 +302,7 @@ public class RecordMovieDialog extends JDialog implements OverlayRenderer ...@@ -303,7 +302,7 @@ public class RecordMovieDialog extends JDialog implements OverlayRenderer
} }
final MyTarget target = new MyTarget(); final MyTarget target = new MyTarget();
final MultiResolutionRenderer renderer = new MultiResolutionRenderer( final MultiResolutionRenderer renderer = new MultiResolutionRenderer(
target, new PainterThread( null ), new double[] { 1 }, 0, 1, null, false, target, () -> {}, new double[] { 1 }, 0, 1, null, false,
viewer.getOptionValues().getAccumulateProjectorFactory(), new CacheControl.Dummy() ); viewer.getOptionValues().getAccumulateProjectorFactory(), new CacheControl.Dummy() );
progressWriter.setProgress( 0 ); progressWriter.setProgress( 0 );
for ( int timepoint = minTimepointIndex; timepoint <= maxTimepointIndex; ++timepoint ) for ( int timepoint = minTimepointIndex; timepoint <= maxTimepointIndex; ++timepoint )
......
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
*/ */
package bdv.viewer.render; package bdv.viewer.render;
import bdv.viewer.RequestRepaint;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import net.imglib2.Interval; import net.imglib2.Interval;
...@@ -36,7 +37,6 @@ import net.imglib2.Volatile; ...@@ -36,7 +37,6 @@ import net.imglib2.Volatile;
import net.imglib2.cache.iotiming.CacheIoTiming; import net.imglib2.cache.iotiming.CacheIoTiming;
import net.imglib2.realtransform.AffineTransform3D; import net.imglib2.realtransform.AffineTransform3D;
import net.imglib2.type.numeric.ARGBType; import net.imglib2.type.numeric.ARGBType;
import net.imglib2.ui.PainterThread;
import net.imglib2.util.Intervals; import net.imglib2.util.Intervals;
import bdv.cache.CacheControl; import bdv.cache.CacheControl;
...@@ -98,7 +98,7 @@ public class MultiResolutionRenderer ...@@ -98,7 +98,7 @@ public class MultiResolutionRenderer
* Thread that triggers repainting of the display. * Thread that triggers repainting of the display.
* Requests for repainting are send there. * Requests for repainting are send there.
*/ */
private final PainterThread painterThread; private final RequestRepaint painterThread;
/** /**
* Creates projectors for rendering current {@code ViewerState} to a * Creates projectors for rendering current {@code ViewerState} to a
...@@ -265,7 +265,7 @@ public class MultiResolutionRenderer ...@@ -265,7 +265,7 @@ public class MultiResolutionRenderer
*/ */
public MultiResolutionRenderer( public MultiResolutionRenderer(
final RenderTarget< ? > display, final RenderTarget< ? > display,
final PainterThread painterThread, final RequestRepaint painterThread,
final double[] screenScaleFactors, final double[] screenScaleFactors,
final long targetRenderNanos, final long targetRenderNanos,
final int numRenderingThreads, final int numRenderingThreads,
......
...@@ -33,12 +33,13 @@ ...@@ -33,12 +33,13 @@
*/ */
package net.imglib2.ui; package net.imglib2.ui;
import bdv.viewer.RequestRepaint;
import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.RejectedExecutionException;
/** /**
* Thread to repaint display. * Thread to repaint display.
*/ */
final public class PainterThread extends Thread public class PainterThread extends Thread implements RequestRepaint
{ {
public interface Paintable public interface Paintable
{ {
...@@ -109,6 +110,7 @@ final public class PainterThread extends Thread ...@@ -109,6 +110,7 @@ final public class PainterThread extends Thread
* Request repaint. This will trigger a call to {@link Paintable#paint()} * Request repaint. This will trigger a call to {@link Paintable#paint()}
* from the {@link PainterThread}. * from the {@link PainterThread}.
*/ */
@Override
public void requestRepaint() public void requestRepaint()
{ {
synchronized ( this ) synchronized ( this )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment