loci.plugins.util

## Class BFVirtualStack

- java.lang.Object
- - ij.ImageStack
  - - ij.VirtualStack
    - - loci.plugins.util.BFVirtualStack

-     public class BFVirtualStack
      extends ij.VirtualStack

  Subclass of VirtualStack that uses Bio-Formats to read planes on demand.
  Author:
    Melissa Linkert melissa at glencoesoftware.com

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Cache` | `cache`
    `private float[]` | `calibrationTable`
    `private boolean` | `colorize`
    `private RecordedImageProcessor` | `currentProcessor`
    `private int` | `currentSlice`
    `protected java.lang.String` | `id`
    `private int[]` | `len`
    `private boolean` | `merge`
    `private java.util.List<java.util.List<RecordedImageProcessor.MethodEntry>>` | `methodStacks`
    `private int[]` | `planeIndexes`
    `protected ImageProcessorReader` | `reader`
    `private boolean` | `record`
    `private int` | `series`

    - ### Fields inherited from class ij.ImageStack

      `cTable`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BFVirtualStack(java.lang.String path, IFormatReader r, boolean colorize, boolean merge, boolean record)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Cache` | `getCache()`
    `int` | `getHeight()`
    `protected static int` | `getHeight(IFormatReader r, java.lang.String path, int series)`
    `java.util.List<RecordedImageProcessor.MethodEntry>` | `getMethodStack()`
    `java.lang.String` | `getPath()`
    `ij.process.ImageProcessor` | `getProcessor(int n)`
    `ImageProcessorReader` | `getReader()`
    `RecordedImageProcessor` | `getRecordedProcessor()`
    `int` | `getSize()`
    `int` | `getWidth()`
    `protected static int` | `getWidth(IFormatReader r, java.lang.String path, int series)`
    `void` | `setPlaneIndexes(int[] planeIndexes)`

    - ### Methods inherited from class ij.VirtualStack

      `addSlice, addSlice, addSlice, addSlice, deleteLastSlice, deleteSlice, getBitDepth, getDirectory, getFileName, getImageArray, getPixels, getProperties, getSliceLabel, isVirtual, reduce, saveChanges, setBitDepth, setIndexes, setPixels, setSliceLabel, size, sortDicom, translate, trim`

    - ### Methods inherited from class ij.ImageStack

      `addSlice, addUnsignedShortSlice, convertToFloat, create, create, crop, drawSphere, duplicate, getColorModel, getRoi, getShortSliceLabel, getShortSliceLabel, getSliceLabels, getVoxel, getVoxels, getVoxels, isHSB, isHSB32, isLab, isRGB, setColorModel, setOptions, setProcessor, setRoi, setVoxel, setVoxels, setVoxels, toString, update`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### reader

          protected ImageProcessorReader reader

    - #### id

          protected java.lang.String id

    - #### cache

          protected Cache cache

    - #### methodStacks

          private java.util.List<java.util.List<RecordedImageProcessor.MethodEntry>> methodStacks

    - #### currentSlice

          private int currentSlice

    - #### currentProcessor

          private RecordedImageProcessor currentProcessor

    - #### colorize

          private boolean colorize

    - #### merge

          private boolean merge

    - #### record

          private boolean record

    - #### series

          private int series

    - #### len

          private int[] len

    - #### planeIndexes

          private int[] planeIndexes

    - #### calibrationTable

          private float[] calibrationTable

  - ### Constructor Detail

    - #### BFVirtualStack

          public BFVirtualStack(java.lang.String path,
                                IFormatReader r,
                                boolean colorize,
                                boolean merge,
                                boolean record)
                         throws FormatException,
                                java.io.IOException,
                                CacheException

      Throws:
        `FormatException`
        `java.io.IOException`
        `CacheException`

  - ### Method Detail

    - #### getWidth

          protected static int getWidth(IFormatReader r,
                                        java.lang.String path,
                                        int series)
                                 throws FormatException,
                                        java.io.IOException

      Throws:
        `FormatException`
        `java.io.IOException`

    - #### getHeight

          protected static int getHeight(IFormatReader r,
                                         java.lang.String path,
                                         int series)
                                  throws FormatException,
                                         java.io.IOException

      Throws:
        `FormatException`
        `java.io.IOException`

    - #### getPath

          public java.lang.String getPath()

    - #### getReader

          public ImageProcessorReader getReader()

    - #### getCache

          public Cache getCache()

    - #### getRecordedProcessor

          public RecordedImageProcessor getRecordedProcessor()

    - #### getMethodStack

          public java.util.List<RecordedImageProcessor.MethodEntry> getMethodStack()

    - #### setPlaneIndexes

          public void setPlaneIndexes(int[] planeIndexes)

    - #### getProcessor

          public ij.process.ImageProcessor getProcessor(int n)

      Overrides:
        `getProcessor` in class `ij.VirtualStack`

    - #### getWidth

          public int getWidth()

      Overrides:
        `getWidth` in class `ij.ImageStack`

    - #### getHeight

          public int getHeight()

      Overrides:
        `getHeight` in class `ij.ImageStack`

    - #### getSize

          public int getSize()

      Overrides:
        `getSize` in class `ij.VirtualStack`

Copyright © 2026 Open Microscopy Environment