/** Deprecated, please use {@link #open(AbstractSpimData, String, ProgressWriter)} instead. */
 @Deprecated
 public BigDataViewer(
     final AbstractSpimData<?> spimData,
     final String windowTitle,
     final ProgressWriter progressWriter) {
   this(new ForDeprecatedConstructors(spimData, windowTitle, progressWriter));
   viewerFrame.setVisible(true);
   InitializeViewerState.initTransform(viewer);
 }
 public static BigDataViewer open(
     final ArrayList<ConverterSetup> converterSetups,
     final ArrayList<SourceAndConverter<?>> sources,
     final int numTimepoints,
     final Cache cache,
     final String windowTitle,
     final ProgressWriter progressWriter) {
   final BigDataViewer bdv =
       new BigDataViewer(
           converterSetups,
           sources,
           null,
           numTimepoints,
           cache,
           windowTitle,
           800,
           600,
           progressWriter);
   bdv.viewerFrame.setVisible(true);
   InitializeViewerState.initTransform(bdv.viewer);
   return bdv;
 }
  public static BigDataViewer open(
      final AbstractSpimData<?> spimData,
      final String windowTitle,
      final ProgressWriter progressWriter) {
    final int width = 800;
    final int height = 600;

    if (WrapBasicImgLoader.wrapImgLoaderIfNecessary(spimData)) {
      System.err.println(
          "WARNING:\nOpening <SpimData> dataset that is not suited for interactive browsing.\nConsider resaving as HDF5 for better performance.");
    }

    final ArrayList<ConverterSetup> converterSetups = new ArrayList<ConverterSetup>();
    final ArrayList<SourceAndConverter<?>> sources = new ArrayList<SourceAndConverter<?>>();
    initSetups(spimData, converterSetups, sources);

    final AbstractSequenceDescription<?, ?, ?> seq = spimData.getSequenceDescription();
    final int numTimepoints = seq.getTimePoints().size();
    final Cache cache = ((ViewerImgLoader<?, ?>) seq.getImgLoader()).getCache();

    final BigDataViewer bdv =
        new BigDataViewer(
            converterSetups,
            sources,
            spimData,
            numTimepoints,
            cache,
            windowTitle,
            width,
            height,
            progressWriter);

    WrapBasicImgLoader.removeWrapperIfPresent(spimData);

    bdv.viewerFrame.setVisible(true);
    InitializeViewerState.initTransform(bdv.viewer);
    return bdv;
  }