loci.formats.in

## Class CV7000Reader

- java.lang.Object
- - loci.formats.FormatHandler
  - - loci.formats.FormatReader
    - - loci.formats.in.CV7000Reader

- All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, ICompressedTileReader, IFormatHandler, IFormatReader, IMetadataConfigurable, IPyramidHandler

      public class CV7000Reader
      extends FormatReader

  Author:
    Melissa Linkert melissa at glencoesoftware.com

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `(package private) class` | `CV7000Reader.Channel`
    `(package private) class` | `CV7000Reader.Field`
    `(package private) class` | `CV7000Reader.LightSource`
    `(package private) class` | `CV7000Reader.MeasurementDataHandler`
    `(package private) class` | `CV7000Reader.MeasurementDetailHandler`
    `(package private) class` | `CV7000Reader.MeasurementSettingsHandler`
    `(package private) class` | `CV7000Reader.MinMax`
    `(package private) class` | `CV7000Reader.Plane`
    `(package private) class` | `CV7000Reader.WPIHandler`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private java.util.Map<java.lang.String,java.lang.Boolean>` | `acquiredWells`
    `private java.util.List<java.lang.String>` | `allFiles`
    `private java.util.ArrayList<CV7000Reader.Channel>` | `channels`
    `private java.lang.String` | `detailPath`
    `static boolean` | `DUPLICATE_PLANES_DEFAULT`
    `static java.lang.String` | `DUPLICATE_PLANES_KEY`
    `private java.lang.String` | `endTime`
    `private java.util.ArrayList<java.lang.String>` | `extraFiles`
    `private int` | `fields`
    `private java.util.ArrayList<CV7000Reader.LightSource>` | `lightSources`
    `private static org.slf4j.Logger` | `LOGGER`
    `private static java.lang.String` | `MEASUREMENT_DETAIL`
    `private static java.lang.String` | `MEASUREMENT_FILE`
    `private java.lang.String` | `measurementPath`
    `private java.util.ArrayList<CV7000Reader.Plane>` | `planeData`
    `private static java.lang.String` | `POST_PROCESS`
    `private MinimalTiffReader` | `reader`
    `private int[][]` | `reversePlaneLookup`
    `private java.lang.String` | `settingsPath`
    `private java.lang.String` | `startTime`
    `private java.lang.String` | `wppPath`

    - ### Fields inherited from class loci.formats.FormatReader

      `core, coreIndex, datasetDescription, domains, fillColor, filterMetadata, flattenedResolutions, group, hasCompanionFiles, in, indexedAsRGB, metadata, metadataStore, normalizeData, resolution, saveOriginalMetadata, series, suffixNecessary, suffixSufficient, THUMBNAIL_DIMENSION`

    - ### Fields inherited from class loci.formats.FormatHandler

      `COMPRESSION_SUFFIXES, currentId, format, metadataOptions, suffixes`

    - ### Fields inherited from interface loci.formats.IFormatReader

      `CAN_GROUP, CANNOT_GROUP, MUST_GROUP`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CV7000Reader()` Constructs a new Yokogawa CV7000 reader.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close(boolean fileOnly)` Closes the currently open file.
    `boolean` | `duplicatePlanes()`
    `int` | `fileGroupOption(java.lang.String id)` Returns an indication of whether the files in a multi-file dataset can be handled individually.
    `protected java.util.ArrayList<java.lang.String>` | `getAvailableOptions()` Returns the list of available metadata options.
    `private int` | `getChannelIndex(CV7000Reader.Plane p)`
    `int` | `getRequiredDirectories(java.lang.String[] files)` Returns the number of parent directories that are important when processing the given list of files.
    `java.lang.String[]` | `getSeriesUsedFiles(boolean noPixels)` Returns an array of filenames needed to open the current series.
    `java.lang.String[]` | `getUsedFiles(boolean noPixels)` Returns an array of filenames needed to open this dataset.
    `protected void` | `initFile(java.lang.String id)` Initializes the given file (parsing header information, etc.).
    `boolean` | `isSingleFile(java.lang.String id)` Returns true if the named file is expected to be the only file in the dataset.
    `private boolean` | `isWellAcquired(int row, int col)`
    `private CV7000Reader.Channel` | `lookupChannel(CV7000Reader.Plane p)`
    `private CV7000Reader.Plane` | `lookupPlane(int series, int no)`
    `byte[]` | `openBytes(int no, byte[] buf, int x, int y, int w, int h)` Obtains a sub-image of the specified image plane into a pre-allocated byte array.
    `private java.lang.String` | `readSanitizedXML(java.lang.String filename)`

    - ### Methods inherited from class loci.formats.FormatReader

      `addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMetaList, addMeta, addMetaList, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMetaList, close, coreIndexToSeries, flattenHashtables, get16BitLookupTable, get8BitLookupTable, getAcquisitionMode, getAdvancedSeriesUsedFiles, getAdvancedUsedFiles, getArcType, getBinning, getBitsPerPixel, getCompression, getContrastMethod, getCoreIndex, getCoreMetadataList, getCorrection, getCurrentCore, getCurrentFile, getDatasetStructureDescription, getDetectorType, getDimensionOrder, getDimensionOrder, getDomains, getEffectiveSizeC, getExperimentType, getFilamentType, getFillColor, getFillRule, getFilterType, getFontFamily, getFontStyle, getGlobalMeta, getGlobalMetadata, getIlluminationType, getImageCount, getImmersion, getIndex, getIndex, getLaserMedium, getLaserType, getMarker, getMedium, getMetadataStore, getMetadataStoreRoot, getMetadataValue, getMicrobeamManipulationType, getMicroscopeType, getModuloC, getModuloT, getModuloZ, getNamingConvention, getOptimalTileHeight, getOptimalTileWidth, getPixelType, getPixelType, getPossibleDomains, getPulse, getResolution, getResolutionCount, getRGBChannelCount, getRotationTransform, getSeries, getSeriesCount, getSeriesMeta, getSeriesMetadata, getSeriesMetadataValue, getSeriesUsedFiles, getSizeC, getSizeT, getSizeX, getSizeY, getSizeZ, getThumbSizeX, getThumbSizeY, getTileColumns, getTileRows, getUnderlyingReaders, getUsedFiles, getZCTCoords, getZCTModuloCoords, hasCompanionFiles, hasFlattenedResolutions, isFalseColor, isGroupFiles, isIndexed, isInterleaved, isInterleaved, isLittleEndian, isMetadataComplete, isMetadataFiltered, isNormalized, isOrderCertain, isOriginalMetadataPopulated, isRGB, isThisType, isThisType, isThisType, isThisType, isThumbnailSeries, isUsedFile, makeFilterMetadata, openBytes, openBytes, openBytes, openPlane, openThumbBytes, readPlane, readPlane, readPlane, reopenFile, seriesToCoreIndex, setCoreIndex, setFillColor, setFlattenedResolutions, setGroupFiles, setId, setMetadataFiltered, setMetadataStore, setNormalized, setOriginalMetadataPopulated, setResolution, setSeries, updateMetadataLists`

    - ### Methods inherited from class loci.formats.FormatHandler

      `checkSuffix, checkSuffix, getFormat, getMetadataOptions, getNativeDataType, getSuffixes, getSupportedMetadataLevels, setMetadataOptions`

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

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

    - ### Methods inherited from interface loci.formats.IFormatHandler

      `getFormat, getNativeDataType, getSuffixes`

    - ### Methods inherited from interface loci.formats.IMetadataConfigurable

      `getMetadataOptions, getSupportedMetadataLevels, setMetadataOptions`

    - ### Methods inherited from interface loci.formats.ICompressedTileReader

      `getTileCodec, getTileCodecOptions, openCompressedBytes, openCompressedBytes`

- - ### Field Detail

    - #### DUPLICATE_PLANES_KEY

          public static final java.lang.String DUPLICATE_PLANES_KEY

      See Also:
        Constant Field Values

    - #### DUPLICATE_PLANES_DEFAULT

          public static final boolean DUPLICATE_PLANES_DEFAULT

      See Also:
        Constant Field Values

    - #### LOGGER

          private static final org.slf4j.Logger LOGGER

    - #### MEASUREMENT_FILE

          private static final java.lang.String MEASUREMENT_FILE

      See Also:
        Constant Field Values

    - #### MEASUREMENT_DETAIL

          private static final java.lang.String MEASUREMENT_DETAIL

      See Also:
        Constant Field Values

    - #### POST_PROCESS

          private static final java.lang.String POST_PROCESS

      See Also:
        Constant Field Values

    - #### allFiles

          private java.util.List<java.lang.String> allFiles

    - #### reader

          private MinimalTiffReader reader

    - #### wppPath

          private java.lang.String wppPath

    - #### detailPath

          private java.lang.String detailPath

    - #### measurementPath

          private java.lang.String measurementPath

    - #### settingsPath

          private java.lang.String settingsPath

    - #### planeData

          private java.util.ArrayList<CV7000Reader.Plane> planeData

    - #### reversePlaneLookup

          private int[][] reversePlaneLookup

    - #### lightSources

          private java.util.ArrayList<CV7000Reader.LightSource> lightSources

    - #### channels

          private java.util.ArrayList<CV7000Reader.Channel> channels

    - #### fields

          private int fields

    - #### startTime

          private java.lang.String startTime

    - #### endTime

          private java.lang.String endTime

    - #### extraFiles

          private java.util.ArrayList<java.lang.String> extraFiles

    - #### acquiredWells

          private transient java.util.Map<java.lang.String,java.lang.Boolean> acquiredWells

  - ### Constructor Detail

    - #### CV7000Reader

          public CV7000Reader()

      Constructs a new Yokogawa CV7000 reader.

  - ### Method Detail

    - #### duplicatePlanes

          public boolean duplicatePlanes()

    - #### getRequiredDirectories

          public int getRequiredDirectories(java.lang.String[] files)
                                     throws FormatException,
                                            java.io.IOException

      Description copied from interface: `IFormatReader`
      Returns the number of parent directories that are important when processing the given list of files. The number of directories is relative to the common parent. For example, given a list with these two files: /path/to/file/foo /path/to/file/that/is/related A return value of 0 indicates that "/path/to/file/" is irrelevant. A return value of 1 indicates that "/path/to/" is irrelevant. Return values less than 0 are invalid. All listed files are assumed to belong to datasets of the same format.
      Specified by:
        `getRequiredDirectories` in interface `IFormatReader`
      Overrides:
        `getRequiredDirectories` in class `FormatReader`
      Throws:
        `FormatException`
        `java.io.IOException`

    - #### isSingleFile

          public boolean isSingleFile(java.lang.String id)
                               throws FormatException,
                                      java.io.IOException

      Description copied from interface: `IFormatReader`
      Returns true if the named file is expected to be the only file in the dataset. For single-file formats, always returns true.
      Specified by:
        `isSingleFile` in interface `IFormatReader`
      Overrides:
        `isSingleFile` in class `FormatReader`
      Throws:
        `FormatException`
        `java.io.IOException`

    - #### fileGroupOption

          public int fileGroupOption(java.lang.String id)
                              throws FormatException,
                                     java.io.IOException

      Description copied from interface: `IFormatReader`
      Returns an indication of whether the files in a multi-file dataset can be handled individually. This method is only useful for formats and datasets which contain multiple files.
      Specified by:
        `fileGroupOption` in interface `IFormatReader`
      Overrides:
        `fileGroupOption` in class `FormatReader`
      Parameters:
        `id` - a file in the multi-file dataset
      Returns:
        an int indicating that we cannot, must, or might group the files. A return value of `FormatTools.MUST_GROUP` indicates that the files cannot be handled separately; the reader will always detect and read all files in the dataset. `FormatTools.CAN_GROUP` indicates that the files may be handled separately, but file grouping must then be disabled via `IFormatReader.setGroupFiles(boolean)`. `FormatTools.CANNOT_GROUP` indicates that the files must be handled separately; the reader will not attempt to read all files in the dataset (this is rare).
      Throws:
        `FormatException`
        `java.io.IOException`
      See Also:
        `FormatTools.MUST_GROUP`, `FormatTools.CAN_GROUP`, `FormatTools.CANNOT_GROUP`

    - #### getUsedFiles

          public java.lang.String[] getUsedFiles(boolean noPixels)

      Description copied from interface: `IFormatReader`
      Returns an array of filenames needed to open this dataset. If the 'noPixels' flag is set, then only files that do not contain pixel data will be returned. The first element in the array is expected to be the path passed to `IFormatHandler.setId(String)`, if appropriate based upon 'noPixels'. The remaining elements are expected to be in a consistent order; if a directory listing is necessary to build the list then it should be sorted first.
      Specified by:
        `getUsedFiles` in interface `IFormatReader`
      Overrides:
        `getUsedFiles` in class `FormatReader`

    - #### getSeriesUsedFiles

          public java.lang.String[] getSeriesUsedFiles(boolean noPixels)

      Description copied from interface: `IFormatReader`
      Returns an array of filenames needed to open the current series. If the 'noPixels' flag is set, then only files that do not contain pixel data will be returned. The first element in the array is expected to be the path passed to `IFormatHandler.setId(String)`, if appropriate based upon 'noPixels'. The remaining elements are expected to be in a consistent order; if a directory listing is necessary to build the list then it should be sorted first.
      Specified by:
        `getSeriesUsedFiles` in interface `IFormatReader`
      Overrides:
        `getSeriesUsedFiles` in class `FormatReader`

    - #### close

          public void close(boolean fileOnly)
                     throws java.io.IOException

      Description copied from interface: `IFormatReader`
      Closes the currently open file. If the flag is set, this is all that happens; if unset, it is equivalent to calling `Closeable.close()`.
      Specified by:
        `close` in interface `IFormatReader`
      Overrides:
        `close` in class `FormatReader`
      Throws:
        `java.io.IOException`

    - #### openBytes

          public byte[] openBytes(int no,
                                  byte[] buf,
                                  int x,
                                  int y,
                                  int w,
                                  int h)
                           throws FormatException,
                                  java.io.IOException

      Description copied from interface: `IFormatReader`
      Obtains a sub-image of the specified image plane into a pre-allocated byte array.
      Specified by:
        `openBytes` in interface `IFormatReader`
      Specified by:
        `openBytes` in class `FormatReader`
      Parameters:
        `no` - the plane index within the current series.
        `buf` - a pre-allocated buffer.
        `x` - X coordinate of the upper-left corner of the sub-image
        `y` - Y coordinate of the upper-left corner of the sub-image
        `w` - width of the sub-image
        `h` - height of the sub-image
      Returns:
        the pre-allocated buffer `buf` for convenience.
      Throws:
        `FormatException` - if there was a problem parsing the metadata of the file.
        `java.io.IOException` - if there was a problem reading the file.
      See Also:
        `IFormatReader.openBytes(int, byte[], int, int, int, int)`

    - #### getAvailableOptions

          protected java.util.ArrayList<java.lang.String> getAvailableOptions()

      Description copied from class: `FormatReader`
      Returns the list of available metadata options.
      Overrides:
        `getAvailableOptions` in class `FormatReader`

    - #### initFile

          protected void initFile(java.lang.String id)
                           throws FormatException,
                                  java.io.IOException

      Description copied from class: `FormatReader`
      Initializes the given file (parsing header information, etc.). Most subclasses should override this method to perform initialization operations such as parsing metadata.
      Overrides:
        `initFile` in class `FormatReader`
      Throws:
        `FormatException` - if a parsing error occurs processing the file.
        `java.io.IOException` - if an I/O error occurs processing the file

    - #### getChannelIndex

          private int getChannelIndex(CV7000Reader.Plane p)

    - #### lookupChannel

          private CV7000Reader.Channel lookupChannel(CV7000Reader.Plane p)

    - #### readSanitizedXML

          private java.lang.String readSanitizedXML(java.lang.String filename)
                                             throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### isWellAcquired

          private boolean isWellAcquired(int row,
                                         int col)

    - #### lookupPlane

          private CV7000Reader.Plane lookupPlane(int series,
                                                 int no)

Copyright © 2026 Open Microscopy Environment