public class BDVReader extends FormatReader
Modifier and Type | Class and Description |
---|---|
(package private) class |
BDVReader.BDVXMLHandler |
private class |
BDVReader.H5Constants |
private class |
BDVReader.H5Coordinate |
Modifier and Type | Field and Description |
---|---|
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] |
bbox |
static java.lang.String |
BDV_MAGIC_STRING |
private java.lang.String |
bdvxml |
private java.util.List<java.lang.String> |
cellObjectNames |
private java.util.List<java.lang.Integer> |
channelIndexes |
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] |
classes |
private int[][] |
COLORS |
private java.lang.Integer |
firstTimepoint |
private java.lang.String |
h5Id |
private java.util.List<java.lang.String> |
H5PathsToImageData |
private java.util.List<BDVReader.H5Coordinate> |
H5PositionList |
static java.lang.String |
HDF_MAGIC_STRING |
private JHDFService |
jhdf |
private int |
lastChannel |
private java.lang.Integer |
lastTimepoint |
private int |
seriesCount |
private java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.String,java.lang.String>> |
setupAttributeList |
private java.util.HashMap<java.lang.Integer,java.lang.Integer> |
setupResolutionCounts |
private java.util.HashMap<java.lang.Integer,java.util.ArrayList<ome.units.quantity.Length>> |
setupVoxelSizes |
private int |
sizeC |
private MetadataStore |
store |
private java.lang.Integer |
timepointIncrement |
private boolean |
timepointUsePattern |
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] |
times |
core, coreIndex, datasetDescription, domains, fillColor, filterMetadata, flattenedResolutions, group, hasCompanionFiles, in, indexedAsRGB, metadata, metadataStore, normalizeData, resolution, saveOriginalMetadata, series, suffixNecessary, suffixSufficient, THUMBNAIL_DIMENSION
COMPRESSION_SUFFIXES, currentId, format, LOGGER, metadataOptions, suffixes
CAN_GROUP, CANNOT_GROUP, MUST_GROUP
Constructor and Description |
---|
BDVReader()
Constructs a new BDV reader.
|
Modifier and Type | Method and Description |
---|---|
void |
close(boolean fileOnly)
Closes the currently open file.
|
private java.lang.String |
fetchXMLId() |
byte[][] |
get8BitLookupTable()
Gets the 8-bit color lookup table associated with
the most recently opened image.
|
private int |
getChannelIndexOfCellObjectName(java.lang.String cellObjectName) |
private java.lang.Object |
getImageData(int no,
int x,
int y,
int width,
int height) |
java.lang.String[] |
getUsedFiles(boolean noPixels)
Returns an array of filenames needed to open this dataset.
|
private static ome.xml.model.primitives.Color |
hex2Rgb(java.lang.String colorStr) |
protected void |
initFile(java.lang.String id)
Initializes the given file (parsing header information, etc.).
|
private void |
initializeJHDFService(java.lang.String id) |
boolean |
isThisType(loci.common.RandomAccessInputStream stream)
Checks if the given stream is a valid stream for this file format.
|
boolean |
isThisType(java.lang.String name,
boolean open)
Checks if a file matches the type of this format reader.
|
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 void |
parseROIs(int s) |
private void |
parseStructure() |
void |
reopenFile()
Reopen any files that were closed, and which are expected to be open
while the reader is open.
|
addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMeta, addGlobalMetaList, addMeta, addMetaList, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMeta, addSeriesMetaList, close, coreIndexToSeries, fileGroupOption, flattenHashtables, get16BitLookupTable, getAcquisitionMode, getAdvancedSeriesUsedFiles, getAdvancedUsedFiles, getArcType, getAvailableOptions, 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, getRequiredDirectories, getResolution, getResolutionCount, getRGBChannelCount, getRotationTransform, getSeries, getSeriesCount, getSeriesMeta, getSeriesMetadata, getSeriesMetadataValue, getSeriesUsedFiles, getSeriesUsedFiles, getSizeC, getSizeT, getSizeX, getSizeY, getSizeZ, getThumbSizeX, getThumbSizeY, getUnderlyingReaders, getUsedFiles, getZCTCoords, getZCTModuloCoords, hasCompanionFiles, hasFlattenedResolutions, isFalseColor, isGroupFiles, isIndexed, isInterleaved, isInterleaved, isLittleEndian, isMetadataComplete, isMetadataFiltered, isNormalized, isOrderCertain, isOriginalMetadataPopulated, isRGB, isSingleFile, isThisType, isThisType, isThumbnailSeries, isUsedFile, makeFilterMetadata, openBytes, openBytes, openBytes, openPlane, openThumbBytes, readPlane, readPlane, readPlane, seriesToCoreIndex, setCoreIndex, setFillColor, setFlattenedResolutions, setGroupFiles, setId, setMetadataFiltered, setMetadataStore, setNormalized, setOriginalMetadataPopulated, setResolution, setSeries, updateMetadataLists
checkSuffix, checkSuffix, getFormat, getMetadataOptions, getNativeDataType, getSuffixes, getSupportedMetadataLevels, setMetadataOptions
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getFormat, getNativeDataType, getSuffixes
getMetadataOptions, getSupportedMetadataLevels, setMetadataOptions
public static final java.lang.String HDF_MAGIC_STRING
public static final java.lang.String BDV_MAGIC_STRING
private final int[][] COLORS
private MetadataStore store
private java.lang.String bdvxml
private java.lang.String h5Id
private int sizeC
private boolean timepointUsePattern
private java.lang.Integer firstTimepoint
private java.lang.Integer lastTimepoint
private java.lang.Integer timepointIncrement
private int seriesCount
private transient JHDFService jhdf
private int lastChannel
private java.util.List<BDVReader.H5Coordinate> H5PositionList
private java.util.List<java.lang.String> H5PathsToImageData
private java.util.List<java.lang.String> cellObjectNames
private java.util.List<java.lang.Integer> channelIndexes
private java.util.HashMap<java.lang.Integer,java.util.HashMap<java.lang.String,java.lang.String>> setupAttributeList
private java.util.HashMap<java.lang.Integer,java.util.ArrayList<ome.units.quantity.Length>> setupVoxelSizes
private java.util.HashMap<java.lang.Integer,java.lang.Integer> setupResolutionCounts
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] times
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] classes
private ch.systemsx.cisd.hdf5.HDF5CompoundDataMap[] bbox
protected void initFile(java.lang.String id) throws FormatException, java.io.IOException
FormatReader
initFile
in class FormatReader
FormatException
- if a parsing error occurs processing the file.java.io.IOException
- if an I/O error occurs processing the fileprivate java.lang.String fetchXMLId() throws FormatException
FormatException
public java.lang.String[] getUsedFiles(boolean noPixels)
IFormatReader
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.getUsedFiles
in interface IFormatReader
getUsedFiles
in class FormatReader
public boolean isThisType(java.lang.String name, boolean open)
FormatReader
FormatReader.isThisType(RandomAccessInputStream)
.isThisType
in interface IFormatReader
isThisType
in class FormatReader
open
- If true, and the file extension is insufficient to determine
the file type, the (existing) file is opened for further analysis.public boolean isThisType(loci.common.RandomAccessInputStream stream) throws java.io.IOException
IFormatReader
isThisType
in interface IFormatReader
isThisType
in class FormatReader
stream
- A RandomAccessInputStream representing the file to check.
The first byte in the stream is assumed to be the first byte
in the file.java.io.IOException
public byte[][] get8BitLookupTable()
IFormatReader
IFormatReader.isIndexed()
returns
false, then this may return null. Also, if IFormatReader.getPixelType()
returns
anything other than FormatTools.INT8
or FormatTools.UINT8
,
this method will return null.get8BitLookupTable
in interface IFormatReader
get8BitLookupTable
in class FormatReader
public byte[] openBytes(int no, byte[] buf, int x, int y, int w, int h) throws FormatException, java.io.IOException
IFormatReader
openBytes
in interface IFormatReader
openBytes
in class FormatReader
no
- the plane index within the current series.buf
- a pre-allocated buffer.x
- X coordinate of the upper-left corner of the sub-imagey
- Y coordinate of the upper-left corner of the sub-imagew
- width of the sub-imageh
- height of the sub-imagebuf
for convenience.FormatException
- if there was a problem parsing the metadata of the
file.java.io.IOException
- if there was a problem reading the file.IFormatReader.openBytes(int, byte[], int, int, int, int)
public void close(boolean fileOnly) throws java.io.IOException
IFormatReader
Closeable.close()
.close
in interface IFormatReader
close
in class FormatReader
java.io.IOException
public void reopenFile() throws java.io.IOException
IFormatReader
IFormatHandler.setId(java.lang.String)
has been
called, but close(false) has not been called.reopenFile
in interface IFormatReader
reopenFile
in class FormatReader
java.io.IOException
private void initializeJHDFService(java.lang.String id) throws java.io.IOException, MissingLibraryException
java.io.IOException
MissingLibraryException
private java.lang.Object getImageData(int no, int x, int y, int width, int height) throws FormatException
FormatException
private void parseStructure() throws FormatException
FormatException
private int getChannelIndexOfCellObjectName(java.lang.String cellObjectName)
private static ome.xml.model.primitives.Color hex2Rgb(java.lang.String colorStr)
private void parseROIs(int s)
Copyright © 2023 Open Microscopy Environment