Package gov.nih.mipav.model.file
Class FileICS
- java.lang.Object
-
- gov.nih.mipav.model.file.FileBase
-
- gov.nih.mipav.model.file.FileICS
-
public class FileICS extends FileBase
Reference: 1. Proposed Standard for Image Cytometry Data Files by Philip Dean, Laura Mascio, David Ow, Damir Sudar, and James Mullikin, Cytometry, 11, pp. 561- 569, 1990.2. libics v.1.3 Online Documentation, copyright 2000-2002 by Cris Luengo. http://www.ph.tn.tudelft.nl/~cris/libics
- Author:
- William Gandler
- See Also:
FileIO
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String[]actualHistoryDOCUMENT ME!private intbufferSizeDOCUMENT ME!private java.lang.StringcaptureVersionDOCUMENT ME!private java.lang.StringcategoryDOCUMENT ME!private java.lang.String[]channelsDOCUMENT ME!private intcolorSpacingDOCUMENT ME!private java.lang.StringcompressionDOCUMENT ME!private java.lang.StringdataFileNameDOCUMENT ME!private longdataOffsetDOCUMENT ME!private java.lang.StringdataSetFileNameDOCUMENT ME!private intdataTypeDOCUMENT ME!private intendBytesDOCUMENT ME!private intendFloatsDOCUMENT ME!private booleanendianessDOCUMENT ME!private intendShortsDOCUMENT ME!private booleanexchangeXYDOCUMENT ME!private java.lang.String[]exPhotonCntDOCUMENT ME!private bytefieldSeparatorDOCUMENT ME!private java.io.FilefileDOCUMENT ME!private java.lang.StringfileDirDOCUMENT ME!private FileInfoICSfileInfoDOCUMENT ME!private FileInfoICSfileInfoCopyprivate java.lang.StringfileNameDOCUMENT ME!private java.lang.StringfilterExposureTimeXDOCUMENT ME!private java.lang.String[]filterFluorophoreXDOCUMENT ME!private java.lang.StringformatDOCUMENT ME!private booleanhasRGBprivate java.lang.StringheaderFileNameDOCUMENT ME!private java.lang.String[]historyDOCUMENT ME!private inthistoryNumberDOCUMENT ME!private ModelImageimageDOCUMENT ME!private float[]imgBufferDOCUMENT ME!private float[]imgBuffer2DOCUMENT ME!private float[]imgBufferIDOCUMENT ME!private float[]imgBufferI2DOCUMENT ME!private double[]imgDBufferDOCUMENT ME!private double[]imgDBuffer2DOCUMENT ME!private double[]imgDBufferIDOCUMENT ME!private double[]imgDBufferI2DOCUMENT ME!private int[]imgExtentsDOCUMENT ME!private long[]imgLBufferDOCUMENT ME!private long[]imgLBuffer2DOCUMENT ME!private float[]imgResolsDOCUMENT ME!private booleaninvertYDOCUMENT ME!private java.lang.String[]labelsDOCUMENT ME!private java.lang.String[]lambdaEmDOCUMENT ME!private java.lang.String[]lambdaExDOCUMENT ME!private ModelLUTLUTDOCUMENT ME!private java.lang.String[]mapchannelDOCUMENT ME!private intnDimsDOCUMENT ME!private java.lang.String[]numApertureDOCUMENT ME!private intnumberSlicesDOCUMENT ME!private intnumberSpaceSlicesDOCUMENT ME!private intnumColorsDOCUMENT ME!private intnumValuesDOCUMENT ME!private java.lang.String[]orderDOCUMENT ME!private float[]originDOCUMENT ME!private intparametersDOCUMENT ME!private java.lang.String[]pinholeRadiusDOCUMENT ME!private java.lang.StringplateChamberIDDOCUMENT ME!private java.lang.StringplateVesselIDDOCUMENT ME!private java.lang.String[]probeDOCUMENT ME!private java.lang.String[]refrInxLensMediumDOCUMENT ME!private java.lang.String[]refrInxMediumDOCUMENT ME!private static intRGB_BETWEEN_SPACEANDTIMEDOCUMENT ME!private static intRGB_FIRSTDOCUMENT ME!private static intRGB_LASTDOCUMENT ME!private intrgbPosDOCUMENT ME!private float[]scaleDOCUMENT ME!private java.lang.StringscilTypeDOCUMENT ME!private java.lang.StringsensorModelDOCUMENT ME!private java.lang.StringsensorTypeDOCUMENT ME!private java.lang.StringsignDOCUMENT ME!private intsignificant_bitsprivate int[]sizesDOCUMENT ME!private java.lang.String[]specimenDOCUMENT ME!private java.lang.String[]specimenSpeciesDOCUMENT ME!private float[]startLocationsDOCUMENT ME!private java.lang.StringsubcategoryDOCUMENT ME!private inttPosDOCUMENT ME!private java.lang.String[]unitsDOCUMENT ME!private int[]unitsOfMeasureDOCUMENT ME!private java.lang.String[]unitsStrDOCUMENT ME!private booleanuseGZIPDOCUMENT ME!private java.lang.String[]valuesDOCUMENT ME!private java.lang.StringversionDOCUMENT ME!private intxPosDOCUMENT ME!private intyPosDOCUMENT ME!private intzPosDOCUMENT ME!-
Fields inherited from class gov.nih.mipav.model.file.FileBase
BIG_ENDIAN, bitsPerPixel, fileNames, LITTLE_ENDIAN, pBarVisible, raFile, READ, READ_WRITE
-
-
Constructor Summary
Constructors Constructor Description FileICS(java.lang.String fileName, java.lang.String fileDir)ICS reader constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidfinalize()Prepares this class for cleanup.FileInfoBasegetFileInfo()getFileInfo - accessor that returns the file info.float[]getImageBuffer()getImageBuffer - accessor that returns the image buffer.ModelLUTgetModelLUT()getModelLUT - returns LUT if defined.private voidreadBuffer(int slice, float[] buffer)Reads a slice of data at a time and stores the results in the buffer.private voidreadComplexBuffer(int slice, float[] bufferR, float[] bufferI)Reads a slice of data at a time and stores the results in the buffer.private voidreadDBuffer(int slice, double[] buffer)Reads a slice of data at a time and stores the results in the buffer.private voidreadDComplexBuffer(int slice, double[] bufferR, double[] bufferI)Reads a slice of data at a time and stores the results in the buffer.booleanreadHeader()Reads the image header.ModelImagereadImage()readImage.private voidreadLBuffer(int slice, long[] buffer)Reads a slice of data at a time and stores the results in the buffer.private voidreadLine()readLine() - reads a line of the file header separate into category, subcategory, and values.voidwriteImage(ModelImage image, FileWriteOptions options)Writes an ICS format type image.-
Methods inherited from class gov.nih.mipav.model.file.FileBase
addProgressChangeListener, bytesToDouble, bytesToFloat, bytesToInt, bytesToShort, doubleToBytes, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, floatToBytes, getBufferDouble, getBufferFloat, getBufferInt, getBufferLong, getBufferShort, getBufferUShort, getDataType, getDouble, getFloat, getInt, getLong, getProgressChangeListeners, getRaFile, getSignedShort, getString, getUInt, getUnsignedByte, getUnsignedShort, intToBytes, isBigEndian, isProgressBarVisible, linkProgress, longToBytes, readDouble, readFloat, readInt, readLong, readShort, readString, readUnsignedShort, removeProgressChangeListener, setBigEndian, setBufferFloat, setBufferInt, setBufferLong, setBufferShort, setBufferString, setDataType, setEndianess, shortToBytes, writeBytes, writeDouble, writeFloat, writeInt, writeLong, writeShort
-
-
-
-
Field Detail
-
RGB_FIRST
private static final int RGB_FIRST
DOCUMENT ME!- See Also:
- Constant Field Values
-
RGB_BETWEEN_SPACEANDTIME
private static final int RGB_BETWEEN_SPACEANDTIME
DOCUMENT ME!- See Also:
- Constant Field Values
-
RGB_LAST
private static final int RGB_LAST
DOCUMENT ME!- See Also:
- Constant Field Values
-
actualHistory
private java.lang.String[] actualHistory
DOCUMENT ME!
-
bufferSize
private int bufferSize
DOCUMENT ME!
-
captureVersion
private java.lang.String captureVersion
DOCUMENT ME!
-
category
private java.lang.String category
DOCUMENT ME!
-
channels
private java.lang.String[] channels
DOCUMENT ME!
-
colorSpacing
private int colorSpacing
DOCUMENT ME!
-
compression
private java.lang.String compression
DOCUMENT ME!
-
dataFileName
private java.lang.String dataFileName
DOCUMENT ME!
-
dataOffset
private long dataOffset
DOCUMENT ME!
-
dataSetFileName
private java.lang.String dataSetFileName
DOCUMENT ME!
-
dataType
private int dataType
DOCUMENT ME!
-
endBytes
private int endBytes
DOCUMENT ME!
-
endFloats
private int endFloats
DOCUMENT ME!
-
endianess
private boolean endianess
DOCUMENT ME!
-
endShorts
private int endShorts
DOCUMENT ME!
-
exchangeXY
private boolean exchangeXY
DOCUMENT ME!
-
exPhotonCnt
private java.lang.String[] exPhotonCnt
DOCUMENT ME!
-
fieldSeparator
private byte fieldSeparator
DOCUMENT ME!
-
file
private java.io.File file
DOCUMENT ME!
-
fileDir
private java.lang.String fileDir
DOCUMENT ME!
-
fileInfo
private FileInfoICS fileInfo
DOCUMENT ME!
-
fileInfoCopy
private FileInfoICS fileInfoCopy
-
fileName
private java.lang.String fileName
DOCUMENT ME!
-
filterExposureTimeX
private java.lang.String filterExposureTimeX
DOCUMENT ME!
-
filterFluorophoreX
private java.lang.String[] filterFluorophoreX
DOCUMENT ME!
-
format
private java.lang.String format
DOCUMENT ME!
-
headerFileName
private java.lang.String headerFileName
DOCUMENT ME!
-
history
private java.lang.String[] history
DOCUMENT ME!
-
historyNumber
private int historyNumber
DOCUMENT ME!
-
image
private ModelImage image
DOCUMENT ME!
-
imgBuffer
private float[] imgBuffer
DOCUMENT ME!
-
imgBuffer2
private float[] imgBuffer2
DOCUMENT ME!
-
imgBufferI
private float[] imgBufferI
DOCUMENT ME!
-
imgBufferI2
private float[] imgBufferI2
DOCUMENT ME!
-
imgDBuffer
private double[] imgDBuffer
DOCUMENT ME!
-
imgDBuffer2
private double[] imgDBuffer2
DOCUMENT ME!
-
imgDBufferI
private double[] imgDBufferI
DOCUMENT ME!
-
imgDBufferI2
private double[] imgDBufferI2
DOCUMENT ME!
-
imgExtents
private int[] imgExtents
DOCUMENT ME!
-
imgLBuffer
private long[] imgLBuffer
DOCUMENT ME!
-
imgLBuffer2
private long[] imgLBuffer2
DOCUMENT ME!
-
imgResols
private float[] imgResols
DOCUMENT ME!
-
invertY
private boolean invertY
DOCUMENT ME!
-
labels
private java.lang.String[] labels
DOCUMENT ME!
-
lambdaEm
private java.lang.String[] lambdaEm
DOCUMENT ME!
-
lambdaEx
private java.lang.String[] lambdaEx
DOCUMENT ME!
-
LUT
private ModelLUT LUT
DOCUMENT ME!
-
mapchannel
private java.lang.String[] mapchannel
DOCUMENT ME!
-
nDims
private int nDims
DOCUMENT ME!
-
numAperture
private java.lang.String[] numAperture
DOCUMENT ME!
-
numberSlices
private int numberSlices
DOCUMENT ME!
-
numberSpaceSlices
private int numberSpaceSlices
DOCUMENT ME!
-
numColors
private int numColors
DOCUMENT ME!
-
numValues
private int numValues
DOCUMENT ME!
-
order
private java.lang.String[] order
DOCUMENT ME!
-
origin
private float[] origin
DOCUMENT ME!
-
parameters
private int parameters
DOCUMENT ME!
-
pinholeRadius
private java.lang.String[] pinholeRadius
DOCUMENT ME!
-
plateChamberID
private java.lang.String plateChamberID
DOCUMENT ME!
-
plateVesselID
private java.lang.String plateVesselID
DOCUMENT ME!
-
probe
private java.lang.String[] probe
DOCUMENT ME!
-
refrInxLensMedium
private java.lang.String[] refrInxLensMedium
DOCUMENT ME!
-
refrInxMedium
private java.lang.String[] refrInxMedium
DOCUMENT ME!
-
rgbPos
private int rgbPos
DOCUMENT ME!
-
scale
private float[] scale
DOCUMENT ME!
-
scilType
private java.lang.String scilType
DOCUMENT ME!
-
sensorModel
private java.lang.String sensorModel
DOCUMENT ME!
-
sensorType
private java.lang.String sensorType
DOCUMENT ME!
-
sign
private java.lang.String sign
DOCUMENT ME!
-
significant_bits
private int significant_bits
-
sizes
private int[] sizes
DOCUMENT ME!
-
specimen
private java.lang.String[] specimen
DOCUMENT ME!
-
specimenSpecies
private java.lang.String[] specimenSpecies
DOCUMENT ME!
-
startLocations
private float[] startLocations
DOCUMENT ME!
-
subcategory
private java.lang.String subcategory
DOCUMENT ME!
-
tPos
private int tPos
DOCUMENT ME!
-
units
private java.lang.String[] units
DOCUMENT ME!
-
unitsOfMeasure
private int[] unitsOfMeasure
DOCUMENT ME!
-
unitsStr
private java.lang.String[] unitsStr
DOCUMENT ME!
-
useGZIP
private boolean useGZIP
DOCUMENT ME!
-
values
private java.lang.String[] values
DOCUMENT ME!
-
version
private java.lang.String version
DOCUMENT ME!
-
xPos
private int xPos
DOCUMENT ME!
-
yPos
private int yPos
DOCUMENT ME!
-
zPos
private int zPos
DOCUMENT ME!
-
hasRGB
private boolean hasRGB
-
-
Method Detail
-
finalize
public void finalize()
Prepares this class for cleanup. Calls thefinalizemethod for existing elements, closes any open files and sets other elements tonull.
-
getFileInfo
public FileInfoBase getFileInfo()
getFileInfo - accessor that returns the file info.- Returns:
- FileInfoBase containing the file info
-
getImageBuffer
public float[] getImageBuffer()
getImageBuffer - accessor that returns the image buffer.- Returns:
- buffer of image.
-
getModelLUT
public ModelLUT getModelLUT()
getModelLUT - returns LUT if defined.- Returns:
- the LUT if defined else it is null
-
readImage
public ModelImage readImage() throws java.io.IOException
readImage.- Returns:
- returns the image
- Throws:
java.io.IOException- if there is an error reading the file
-
writeImage
public void writeImage(ModelImage image, FileWriteOptions options) throws java.io.IOException
Writes an ICS format type image.- Parameters:
image- Image model of data to write.options- options such as starting and ending slices and times- Throws:
java.io.IOException- if there is an error writing the file
-
readBuffer
private void readBuffer(int slice, float[] buffer) throws java.io.IOExceptionReads a slice of data at a time and stores the results in the buffer.- Parameters:
slice- offset into the file stored in the dataOffset arraybuffer- buffer where the info is stored- Throws:
java.io.IOException- if there is an error reading the file
-
readComplexBuffer
private void readComplexBuffer(int slice, float[] bufferR, float[] bufferI) throws java.io.IOExceptionReads a slice of data at a time and stores the results in the buffer.- Parameters:
slice- offset into the file stored in the dataOffset arraybufferR- buffer where the real info is storedbufferI- buffer where the imaginary info is stored- Throws:
java.io.IOException- if there is an error reading the file
-
readDBuffer
private void readDBuffer(int slice, double[] buffer) throws java.io.IOExceptionReads a slice of data at a time and stores the results in the buffer.- Parameters:
slice- offset into the file stored in the dataOffset arraybuffer- buffer where the info is stored- Throws:
java.io.IOException- if there is an error reading the file
-
readDComplexBuffer
private void readDComplexBuffer(int slice, double[] bufferR, double[] bufferI) throws java.io.IOExceptionReads a slice of data at a time and stores the results in the buffer.- Parameters:
slice- offset into the file stored in the dataOffset arraybufferR- buffer where the real info is storedbufferI- buffer where the imaginary info is stored- Throws:
java.io.IOException- if there is an error reading the file
-
readHeader
public boolean readHeader() throws java.io.IOExceptionReads the image header.- Throws:
java.io.IOException- DOCUMENT ME!
-
readLBuffer
private void readLBuffer(int slice, long[] buffer) throws java.io.IOExceptionReads a slice of data at a time and stores the results in the buffer.- Parameters:
slice- offset into the file stored in the dataOffset arraybuffer- buffer where the info is stored- Throws:
java.io.IOException- if there is an error reading the file
-
readLine
private void readLine() throws java.io.IOExceptionreadLine() - reads a line of the file header separate into category, subcategory, and values.- Throws:
java.io.IOException- if there is an error reading the file
-
-