Class ModelStorageBase

java.lang.Object
gov.nih.mipav.model.structures.ModelSerialCloneable
gov.nih.mipav.model.structures.ModelStorageBase
All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
ModelHistogram, ModelImage, ModelLUT, ModelRGB

public class ModelStorageBase extends ModelSerialCloneable
Author:
pandyan
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a unsigned byte value. (4 * UBYTE(8 bits) = 4 bytes)
    static final int
    Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a float value. (4 * FLOAT(32 bits) = 16 bytes)
    static final String
    Used to indicate, as a String, that the data buffer is of type color (ARGB - floats).
    static final String
    Used to indicate, as a String, that the data buffer is of type color (ARGB - unsigned bytes).
    static final int
     
    static final String
     
    static final int
    Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a unsigned short value. (4 * USHORT(16 bits) = 8 bytes)
    static final String
    Used to indicate, as a String, that the data buffer is of type color (ARGB - unsigned shorts).
    private float
     
    private float
     
    private float
     
    private float
     
    static final int
    Used to indicate that the data buffer is of type Boolean (1 bit per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type boolean.
    Type of image buffer (i.e.
    static final String[]
    Deprecated.
    should use enums directly
    static final int
    Used to indicate that the data buffer is of type signed byte (8 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type byte.
    static final int
    Used to indicate that the data buffer is of complex type floats (2 x 64 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type complex (float).
    private BufferBase
    Storage location of image data.
    private int
    Total buffer length.
    static final int
    Used to indicate that the data buffer is of complex type of doubles (2 x 128 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type complex (double).
    private int[]
    Bounds of the image where.
    private int[]
    Bounds of the image where.
    static final int
    Used to indicate that the data buffer is of type double (64 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type signed double.
    protected FileInfoBase[]
    Each image slice has a information that describes aspects of each slice of an image.
    private int
    DOCUMENT ME!
    static final int
    Used to indicate that the data buffer is of type float (32 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type signed float.
    private float
    DOCUMENT ME!
    private float
    DOCUMENT ME!
    private float
    5 variables used in Gabor transform. - should be removed - redesigned
    private float
    DOCUMENT ME!
    private boolean
    DOCUMENT ME!
    private boolean
    Boolean telling if 3D images are processed 1 slice at a time.
    static final int
    Used to indicate that the data buffer is of type signed integer (32 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type signed integer.
    protected double
    lastMin and lastMax store the last min and max values for an image. these are used as a trigger for resetting the transfer function.
    protected double
    lastMin and lastMax store the last min and max values for an image. these are used as a trigger for resetting the transfer function.
    static final int
    Used to indicate linear (ie. bilinear, trilinear) interpolation.
    private int
    Locking status of the image.
    protected boolean
    Boolean telling if log magnitude display is used for the data buffer
    static final int
    Used to indicate that the data buffer is of type signed long integer (64 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type signed long.
    private boolean
    Set to true when the image is the product of the ffts of two images, so that on an inverse_fft this image will be centered properly.
    private boolean
    When true, display the data in the Radiological View, when false display the Neurological View:.
    private final Vector<WildMagic.LibFoundation.Mathematics.ColorRGBA>
    Surface color vector. - TO BE MOVED - redesigned
    private final Vector<WildMagic.LibFoundation.Mathematics.ColorRGBA[]>
    Surface mask color vector. - TO BE MOVED - redesigned
    private final Vector<BitSet>
    Surface mask vector.- TO BE MOVED - redesigned.
    private double
    Minimum and maximum image intensity.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum image intensity.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private double
    Minimum and maximum for a color image.
    private int
    Number of dimensions of the data.
    static final int
    Used to indicate nearest neighbor interpolation.
    private double
    Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    private double
    Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    private double
    Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    private double
    Minimum and maximum nonzero intensity. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero intensity. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private double
    Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    private int
     
    private boolean
    DOCUMENT ME!
    private boolean
    DOCUMENT ME!
    private int[]
    DOCUMENT ME!
    private double
    The maximum filter ripple in Chebyshev I and II The passband ripple in decibels in Elliptic
    private int
    DOCUMENT ME!
    private int
    DOCUMENT ME!
    private int
    This are variables used by the FFT filter algorithm. - should be removed - redesigned
    private double
    Decibels stopband is down in Elliptic
    private int[]
    DOCUMENT ME!
    static final int
    Used to indicate that the buffer is locked from reading.
    private static final long
    Use serialVersionUID for interoperability.
    static final int
    Used to indicate that the data buffer is of type signed short (16 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type signed short.
    private float
    DOCUMENT ME!
    private float
    DOCUMENT ME!
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private double
    smallest magnitude negative and positive.
    private float
     
    private float
     
    private float
     
    private float
     
    private double
     
    private double
     
    private double
     
    private double
     
    static final int
    Used to indicate Taylor series interpolation.
    private float
    DOCUMENT ME!
    static final int
    Used to indicate that the data buffer is of type unsigned byte (8 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type unsigned byte.
    static final int
    Used to indicate that the data buffer is of type unsigned integer (32 bits per voxel).
    static final String
    Used to indicate, as a String, that the data buffer is of type unsigned integer.
    private boolean
    Boolean telling if unequal dimensions are allowed in the FFT image.
    static final int
    Used to indicate that the buffer is unlocked and can be writen to or read from.
    static final int
    Used to indicate that the data buffer is of type unsigned short (16 bits per voxal).
    static final String
    Used to indicate, as a String, that the data buffer is of type unsigned short.
    static final int
    Used to indicate that the buffer is locked from writing.
    private int
    Locking write count.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Default constructor.
    ModelStorageBase(int type, int[] dimExtents)
    Allocates buffer memory of the specified type.
    Allocates buffer memory of the specified type.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addSurfaceMask(int index, BitSet kMask, WildMagic.LibFoundation.Mathematics.ColorRGBA[] kMaskColors, WildMagic.LibFoundation.Mathematics.ColorRGBA kColor)
    Adds a surface mask to this image.
    protected void
    Allocates data based on the data type and dataSize.
    void
    computes the avg intensity got 2d and 3d greyscale and color images
    void
    Calculates the min and max values for the image array.
    void
    calcMinMax(boolean logMagDisplay)
     
    void
    calcMinMaxMag(boolean logMagDisplay)
    Calculates the min and max magnitude values for the image array.
    void
    Calculates the min and max nonzero values for the image array.
    Copies the object.
    protected void
    Computes the datasize based on the type of buffer.
    protected void
    construct(ModelStorageBase.DataType type, int[] dimExtents)
    Allocates buffer memory of the specified type.
    void
    Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
    void
    Dispose of memory and call the garbage collector.
    final float[]
    export(int[] axisOrder, boolean[] axisFlip, int tSlice, int slice, float[] values, boolean bMask)
    Exports data based on the mapping from ModelImage space to Patient space.
    final float[]
    export(int orientation, int tSlice, int slice, float[] values, boolean bMask)
    Exports data based on the mapping from ModelImage space to Patient space.
    final void
    exportComplexData(int start, int length, float[] valuesR, float[] valuesI)
    Export data to the real values and the images values arrays.
    final void
    exportComplexSliceXY(int slice, float[] values, boolean logMagDisplay)
    Export XY slice magnitude data into values array.
    final Object
    exportData(int start, int length)
    Export data into values array, in the native type of the model image.
    final void
    exportData(int start, int length, byte[] values)
    Export data into values array.
    final void
    exportData(int start, int length, double[] values)
    Export data in values array.
    final void
    exportData(int start, int length, float[] values)
    Export data to values array.
    final void
    exportData(int start, int length, int[] values)
    Export data into values array.
    final void
    exportData(int start, int length0, int length1, float[] values)
    export data to values array.
    final void
    exportData(int start, int length, long[] values)
    Export data into values array.
    final void
    exportData(int start, int length, short[] values)
    Export data into values array.
    final void
    exportData(int start, int length, Number[] values)
    Export data into values array.
    final void
    exportData(int start, int length, BitSet values)
    Export data into values array.
    final void
    exportDataNoLock(int start, int length, byte[] values)
    Export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, double[] values)
    export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, float[] values)
    export data in values array WITHOUT using locking.
    final void
    exportDataNoLock(int start, int length, int[] values)
    Export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, long[] values)
    export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, short[] values)
    Export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, Number[] values)
    export data into values array WITHOUT locking.
    final void
    exportDataNoLock(int start, int length, BitSet values)
    export data into values array WITHOUT locking.
    final void
    exportDComplexData(int start, int length, double[] valuesR, double[] valuesI)
    Export data to the real values and the imaginary values arrays.
    final void
    exportDiagonal(int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float[] values, boolean bInterpolate)
    ShowDiagonal samples the ModelImage data along a non-axis aligned plane.
    final void
    exportDiagonal(int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float[] values, boolean bInterpolate, BitSet imageMask, Vector<BitSet> surfaceMask, boolean[] surfaceValues)
     
    final void
    exportDiagonal(BitSet duplicateMask, int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float diameter, boolean bSetZero, float[] values, boolean bInterpolate)
    ShowDiagonal samples the ModelImage data along a non-axis aligned plane.
    final void
    exportDMagData(int start, int length, double[] values)
    Export magnitude data to values array.
    final void
    exportMagData(int start, int length, double[] values)
    export magnitude data to values array.
    final void
    exportMagData(int start, int length, float[] values)
    export magnitude data to values array.
    final Object
    exportRGBData(int offset, int start, int length)
    export data in values array.
    final void
    exportRGBData(int offset, int start, int length, byte[] values)
    export data in values array.
    final void
    exportRGBData(int offset, int start, int length, double[] values)
    export data in values array.
    final void
    exportRGBData(int offset, int start, int length, float[] values)
    export data in values array.
    final void
    exportRGBData(int offset, int start, int length, short[] values)
    export data in values array.
    final void
    exportRGBDataNoLock(int offset, int start, int length, double[] values)
    Export data in values array WITHOUT using locking.
    final void
    exportRGBDataNoLock(int offset, int start, int length, float[] values)
    Export data in values array WITHOUT using locking.
    final void
    exportSliceXY(int slice, byte[] values)
    Export XY slice into values array.
    final void
    exportSliceXY(int slice, double[] values)
    export XY slice into values array.
    final void
    exportSliceXY(int slice, float[] values)
    export XY slice into values array.
    final void
    exportSliceXY(int slice, int[] values)
    Export XY slice into values array.
    final void
    exportSliceXY(int slice, long[] values)
    export XY slice into values array.
    final void
    exportSliceXY(int slice, short[] values)
    Export XY slice into values array.
    protected void
    Calls disposeLocal of this class to ensure this class nulls the references to global class variables so that memory will be recovered.
    final WildMagic.LibFoundation.Mathematics.Vector3f
    findMax(int tSlice, int slice, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float diameter, boolean bInterpolate)
     
    final Number
    get(int position)
    function to get data where bounds checking is performed.
    final Number
    get(int[] position)
    nD get data fuction where bounds checking is performed.
    final Number
    get(int x, int y)
    2D get data fuction where bounds checking is performed.
    final Number
    get(int x, int y, int z)
    3D get data fuction where bounds checking is performed.
    final Number
    get(int x, int y, int z, int b)
    4D get data fuction where bounds checking is performed.
    float
     
    float
     
    float
     
    float
     
    int[]
    Returns the axis orientation of image.
    final Number
    getBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final boolean
    getBoolean(int position)
    Version of get that does NOT perform bounds checking.
    final boolean
    getBoolean(int[] position)
    n-Dimensional get data fuction where bounds checking is NOT performed.
    final boolean
    getBoolean(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final boolean
    getBoolean(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final boolean
    getBoolean(int x, int y, int z, int b)
    4D get data fuction where bounds checking is NOT performed.
    static String
    getBufferTypeStr(int type)
    Returns the string for a particular buffer type.
    final byte
    getByte(int position)
    Version of get that does NOT perform bounds checking
    final byte
    getByte(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final byte
    getByte(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final byte
    getByte(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final byte
    getByte(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final byte
    getByteBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final byte
    getByteTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    final Number
    getC(int position, int color)
    Color function to get data where bounds checking is performed.
    boolean
    Accessor method for the m_bConvolve data memeber.
    int
    Get total buffer length.
    Accessor that returns the image buffer type as an enum.
    final double
    getDouble(int position)
    The interpolated value from the data array.ersion of get that does NOT perform bounds checking.
    final double
    getDouble(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final double
    getDouble(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final double
    getDouble(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final double
    getDouble(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final double
    getDoubleBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final double
    getDoubleTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    final int[]
    Accessor that returns the extents of the image.
    final int[]
    getExtents(int orientation)
    Returns the image extents translated into the Patient-Coordinate systsm:
    final int[]
    getExtents(int[] aiAxisOrder)
    Returns the image extents translated into the Patient-Coordinate system:
    final int[]
    getExtentsSize(int orientation)
     
    Accessor that returns the fileInfo array (one per slice).
    getFileInfo(int i)
    Accessor that returns the fileInfo of a specific image slice.
    final int
    returns type of filter - low, high, bandpass, or bandstop. - TO BE MOVED
    final float
    getFloat(int position)
    Version of get that does NOT perform bounds checking.
    final float
    getFloat(int[] position)
    nD get data function where bounds checking is NOT performed.
    final float
    getFloat(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final float
    getFloat(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final float
    getFloat(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final float
    getFloatBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final float
    getFloatC(int x, int y, int c)
    2D color get data fuction where bounds checking is NOT performed.
    final float
    getFloatC(int x, int y, int z, int c)
    3D color get data fuction where bounds checking is NOT performed.
    final float
    getFloatC(int x, int y, int z, int t, int c)
    4D get data fuction where bounds checking is NOT performed.
    final float
    getFloatTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    final float
    getFloatTriLinearBounds(float x, float y, float z)
    Get a value using tri-linear interpoloation.
    final float
    getFloatTriLinearBounds(float x, float y, float z, int c)
    Get a value using tri-linear interpoloation.
    final float
    getFloatTriLinearBoundsTime(float x, float y, float z, int t)
    Get a value using tri-linear interpoloation.
    final float
    returns frequency 1 of filter.
    final float
    returns frequency 2 of filter.
    final float
    returns frequency U of filter.
    final float
    returns frequency V of filter.
    final boolean
    DOCUMENT ME!
    int
    getHeight(int orientation)
    Returns the image height, based on the Patient Coordinates orientation from which the data will be viewed:
    boolean
    Accessor that returns the boolean indicating if 3D images are processed one slice at a time.
    int
    Gets the image orientation (sagittal, axial, ...).
    final int
    getInt(int position)
    Version of get that does NOT perform bounds checking.
    final int
    getInt(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final int
    getInt(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final int
    getInt(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final int
    getInt(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final int
    getIntBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final int
    getIntTriLinear(float x, float y, float z)
    Version of get that performs tri-linear interpoloation.
    final int
    Accessor that returns the lock status of the image.
    boolean
    Accessor that returns the boolean indicating if log magnitude displays are used in complex images.
    final long
    getLong(int position)
    Version of get that does NOT perform bounds checking.
    final long
    getLong(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final long
    getLong(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final long
    getLong(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final long
    getLong(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final long
    getLongBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final long
    getLongTriLinear(float x, float y, float z)
    Version of get that performs tri-linear interpoloation.
    double
    Accessor that returns the maximum value in the dataArray.
    double
    Accessor that returns the maximum alpha value in the dataArray.
    double
    Accessor that returns the maximum blue value in the dataArray.
    double
    Accessor that returns the maximum green value in the dataArray.
    double
    Accessor that returns the maximum red value in the dataArray.
    double
    Accessor that returns the minimum value in the dataArray.
    double
    Accessor that returns the minimum alpha value in the dataArray.
    double
    Accessor that returns the minimum blue value in the dataArray.
    double
    getMinG - Accessor that returns the minimum green value in the dataArray.
    double
    Accessor that returns the minimum red value in the dataArray.
    final int
    Accessor that returns the dimensionality of the image.
    double
    Accessor that returns the maximum value without log processing in the dataArray.
    double
    Accessor that returns the minimum value without log processing in the dataArray.
    double
    Accessor that returns the minimum nonzero value without log processing in the dataArray.
    double
    Accessor that returns the smallest magnitude negative value in the dataArray.
    double
    Accessor that returns the maximum nonzero blue value in the dataArray.
    double
    Accessor that returns the maximum nonzero green value in the dataArray.
    double
    Accessor that returns the maximum nonzero red value in the dataArray.
    double
    Accessor that returns the minimum nonzero value in the dataArray.
    double
    Accessor that returns the minimum nonzero blue value in the dataArray.
    double
    Accessor that returns the minimum nonzero green value in the dataArray.
    double
    Accessor that returns the minimum nonzero red value in the dataArray.
    int
     
    float[]
    Returns the origin of the image.
    float[]
    getOrigin(int index, int orientation)
    Returns the image origin for the image translated into the Patient-Coordinate systsm:
    final boolean
    DOCUMENT ME!
    final boolean
    DOCUMENT ME!
    final int[]
    DOCUMENT ME!
    final double
     
    final int[]
    Accessor that returns the original extents of the image.
    final int
    returns integer telling filter construction method.
    final int
    returns integer telling filter order. - TO BE MOVED
    final int
    returns kernel diameter chosen on forward FFT.
    final double
    Decibels stopband is down in Elliptic
    final int[]
    DOCUMENT ME!
    boolean
    Gets the radiological view flag:
    float[]
    getResolutions(int index)
    Returns the resolutions for the image without regarding resolution difference between slices.
    float[]
    getResolutions(int index, int orientation)
    Returns the resolutions for the image translated into the Patient-Coordinate systsm:
    float[]
    getResolutions(int index, int[] aiAxisOrder)
    Returns the resolutions for the image translated into the Patient-Coordinate systsm:
    final short
    getShort(int position)
    Version of get that does NOT perform bounds checking.
    final short
    getShort(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final short
    getShort(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final short
    getShort(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final short
    getShort(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final short
    getShortBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final short
    getShortTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    final float
    returns standard deviation U of filter.
    final float
    returns standard deviation V of filter.
    final int
    Accessor that returns the total size(length) of the data array.
    final int
    Get the nuber of pixels in a slice of the image.
    double
    Accessor that returns the smallest magnitude negative value in the dataArray.
    double
    Accessor that returns the smallest magnitude negative blue value in the dataArray.
    double
    Accessor that returns the smallest magnitude negative green value in the dataArray.
    double
    Accessor that returns the smallest magnitude negative red value in the dataArray.
    double
    Accessor that returns the smallest magnitude positive value in the dataArray.
    double
    Accessor that returns the smallest magnitude positive blue value in the dataArray.
    double
    Accessor that returns the smallest magnitude positive green value in the dataArray.
    double
    Accessor that returns the smallest magnitude positive red value in the dataArray.
    float
     
    float
     
    float
     
    float
     
    double
     
    double
     
    double
     
    double
     
    getSurfaceMask(int index)
    Returns the surface mask from this image.
    WildMagic.LibFoundation.Mathematics.ColorRGBA
    Returns the surface mask from this image.
    final float
    Returns roation angle theta in radians of filter.
    final Number
    getTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    final int
    Accessor that returns the image buffer type.
    static double
    getTypeMax(int type)
    This method return the max value allowed of the type
    static double
    getTypeMin(int type)
    his method return the min value allowed of the type
    final String
    Accessor that returns the image type.
    final short
    getUByte(int position)
    version of get that does NOT perform bounds checking.
    final short
    getUByte(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final short
    getUByte(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final short
    getUByte(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final short
    getUByte(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final short
    getUByteBiLinear(float x, float y)
    Version of get that performs bi-linear interpoloation.
    final short
    getUByteTriLinear(float x, float y, float z)
    Version of get that performs tri-linear interpoloation.
    final long
    getUInt(int position)
    version of get that does NOT perform bounds checking.
    final long
    getUInt(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final long
    getUInt(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final long
    getUInt(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final long
    getUInt(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final long
    getUIntBiLinear(float x, float y)
    version of get that performs bi-linear interpoloation.
    final long
    getUIntTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    boolean
    Accessor that returns the boolean indicating if unequal dimensions are allowed in complex images.
    int[]
    Returns the units used to measure all dimensions of the image.
    int
    getUnitsOfMeasure(int index)
    Returns the unit used to measure the specific dimension of image.
    int[]
    getUnitsOfMeasure(int index, int orientation)
    Returns the units of measure for the image translated into the Patient-Coordinate systsm:
    final int
    getUShort(int position)
    version of get that does NOT perform bounds checking.
    final int
    getUShort(int[] position)
    nD get data fuction where bounds checking is NOT performed.
    final int
    getUShort(int x, int y)
    2D get data fuction where bounds checking is NOT performed.
    final int
    getUShort(int x, int y, int z)
    3D get data fuction where bounds checking is NOT performed.
    final int
    getUShort(int x, int y, int z, int t)
    4D get data fuction where bounds checking is NOT performed.
    final int
    getUShortBiLinear(float x, float y)
    Version of get that performs bi-linear interpoloation.
    final int
    getUShortTriLinear(float x, float y, float z)
    version of get that performs tri-linear interpoloation.
    int[]
    Get the factors needed to iterate through the image volume.
    int
    Gets the number of pixels in a volume of the image.
    int
    getWidth(int orientation)
    Returns the image width, based on the Patient Coordinates orientation from which the data will be viewed:
    final void
    importComplexData(int start, float[] valuesR, float[] valuesI, boolean mmFlag, boolean logMagDisplay)
    import Complex data (in 2 float units) into data array.
    final void
    importData(int start, boolean[] values, boolean mmFlag)
    Import boolean data into data array.
    final void
    importData(int start, byte[] values, boolean mmFlag)
    Import byte data into data array.
    final void
    importData(int start, double[] values, boolean mmFlag)
    import double data into data array.
    final void
    importData(int start, float[] values, boolean mmFlag)
    import float data into data array.
    final void
    importData(int start, int[] values, boolean mmFlag)
    import integer data into data array.
    final void
    importData(int start, long[] values, boolean mmFlag)
    import long data into data array.
    final void
    importData(int start, short[] values, boolean mmFlag)
    import short data into data array.
    final void
    importData(int start, Number[] values, boolean mmFlag)
    import Number data into data array.
    final void
    importData(int start, BitSet values, boolean mmFlag)
    Import boolean (BitSet) data into data array.
    final void
    importData(Object value_array)
    Import Object.
    final void
    importDComplexData(int start, double[] valuesR, double[] valuesI, boolean mmFlag, boolean logMagDisplay)
    import Complex data (in 2 double units) into data array.
    final void
    importRGBData(int color, int alphaIndexStart, byte[] values, boolean mmFlag)
    Import byte data into data array.
    final void
    importRGBData(int color, int alphaIndexStart, float[] values, boolean mmFlag)
    import float data into data array.
    final void
    importRGBData(int color, int alphaIndexStart, short[] values, boolean mmFlag)
    Import byte data into data array.
    final void
    importUData(int start, int[] values, boolean mmFlag)
    import int data into data array.
    final void
    importUData(int start, long[] values, boolean mmFlag)
    import int data into data array.
    final void
    importUData(int start, short[] values, boolean mmFlag)
    import short data into data array.
    void
    reallocate(int type)
    Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
    void
    reallocate(int[] dimExtents)
    Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
    void
    reallocate(int type, int[] dimExtents)
    Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
    void
    Recomputes the datasize based on the type of buffer.
    final void
    Releases the lock so that other proceses can read or write the data.
    void
    removeSurfaceMask(int index)
    Removes the surface mask from this image.
    Returns the array of BitSet masks for backup.
    void
    Restores the mask list from the array.
    final void
    set(int[] position, boolean value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, byte value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, double value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, float value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, int value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, long value)
    nD set data fuction where bounds checking is NOT performed.
    final void
    set(int[] position, short value)
    nD set data fuction where bounds checking is NOT performed.
    final boolean
    set(int[] position, Number value)
    nD set data fuction where bounds checking is performed.
    final void
    set(int position, boolean value)
    version of set that does NOT perform bounds checking
    final void
    set(int position, byte value)
    Version of set that does NOT perform bounds checking.
    final void
    set(int position, double value)
    version of set that does NOT perform bounds checking.
    final void
    set(int position, float value)
    version of set that does NOT perform bounds checking.
    final void
    set(int position, int value)
    Version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, boolean value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, byte value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, double value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, float value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, boolean value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, byte value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, double value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, float value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, boolean value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, byte value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, double value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, float value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, int value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, long value)
    4D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, int b, short value)
    4D fast version of set that does NOT perform bounds checking.
    final boolean
    set(int x, int y, int z, int b, Number value)
    4D get data fuction where bounds checking is performed.
    final void
    set(int x, int y, int z, long value)
    3D fast version of set that does NOT perform bounds checking.
    final void
    set(int x, int y, int z, short value)
    3D fast version of set that does NOT perform bounds checking.
    final boolean
    set(int x, int y, int z, Number value)
    3D set data fuction where bounds checking is performed.
    final void
    set(int x, int y, long value)
    2D fast version of set that does NOT perform bounds checking.
    final boolean
    set(int x, int y, Number value)
    2D get data fuction where bounds checking is performed.
    final void
    set(int position, long value)
    version of set that does NOT perform bounds checking.
    final boolean
    set(int position, Number value)
    Set that does perform bounds checking.
    final void
    setAll(byte value)
    Sets the entire buffer to value passed to this method.
    final void
    setAll(double value)
    Sets the entire buffer to value passed to this method.
    final void
    setAll(float value)
    Sets the entire buffer to value passed to this method.
    final void
    setAll(int value)
    Sets the entire buffer to value passed to this method.
    final void
    setAll(short value)
    Sets the entire buffer to value passed to this method.
    final void
    setAllUByte(short value)
    Sets the entire buffer to value passed to this method.
    final void
    setAllUShort(int value)
    Sets the entire buffer to value passed to this method.
    final void
    setC(int position, int c, float value)
    color version of setC that does NOT perform bounds checking.
    final void
    setC(int x, int y, int c, float value)
    2D fast color version of set that does NOT perform bounds checking.
    final void
    setC(int x, int y, int z, int c, float value)
    3D fast color version of set that does NOT perform bounds checking.
    final boolean
    setC(int x, int y, int z, int c, Number value)
    3D color set data fuction where bounds checking is performed.
    final boolean
    setC(int position, int color, Number value)
    Sets the entire buffer to value passed to this method.
    final void
    setComplex(int x, int y, int z, int part, float value)
     
    void
    setConvolve(boolean bConvolve)
    Accessor method for the m_bConvolve data memeber.
    void
    setExtents(int[] dims)
    Sets the dimExtents for this structure.
    void
    Accessor that sets the entire fileInfo array of the image.
    void
    setFileInfo(FileInfoBase fInfo, int idx)
    Accessor that sets the fileInfo class for the image.
    void
    setFilterType(int _filterType)
    DOCUMENT ME!
    void
    setFreq1(float _freq1)
    DOCUMENT ME!
    void
    setFreq2(float _freq2)
    DOCUMENT ME!
    void
    setFreqU(float _freqU)
    DOCUMENT ME!
    void
    setFreqV(float _freqV)
    DOCUMENT ME!
    void
    setHaveWindowed(boolean window)
    DOCUMENT ME!
    void
    setImage25D(boolean _image25D)
    Accessor that sets the boolean telling if 3D images are processed one slice at a time.
    void
    Sets the lockFlag to protect data.
    final void
    setLock(int lockType)
    Sets the lockFlag to protect data.
    void
    setLogMagDisplay(boolean logMagDisplay)
    Accessor that sets the boolean telling if log magnitude display is used in a complex image.
    void
    setMax(double _max)
    Accessor that sets the maximum value in the dataArray.
    void
    setMaxB(double _max)
    Accessor that sets the maximum value in the dataArray.
    void
    setMaxG(double _max)
    Accessor that sets the maximum value in the dataArray.
    void
    setMaxR(double _max)
    Accessor that sets the maximum value in the dataArray.
    void
    setMin(double _min)
    Accessor that sets the minimum value in the dataArray.
    void
    setMinB(double _min)
    Accessor that sets the minimum value in the dataArray.
    void
    setMinG(double _min)
    Accessor that sets the minimum value in the dataArray.
    void
    setMinR(double _min)
    Accessor that sets the minimum value in the dataArray.
    void
    setOriginalCropCheckbox(boolean cropCheckbox)
    DOCUMENT ME!
    void
    setOriginalDoCrop(boolean doCrop)
    DOCUMENT ME!
    void
    setOriginalEnd(int[] end)
    DOCUMENT ME!
    void
    setOriginalEpsilon(double epsilon)
     
    void
    setOriginalExtents(int[] dims)
    Sets original dimensionality of the images.
    void
    setOriginalFilterConstruction(int filterConstruction)
    DOCUMENT ME!
    void
    setOriginalFilterOrder(int filterOrder)
    DOCUMENT ME!
    void
    DOCUMENT ME!
    void
    setOriginalRs(double rs)
     
    void
    setOriginalStart(int[] start)
    DOCUMENT ME!
    void
    setRadiologicalView(boolean bEnabled)
    Sets the radiological view flag.
    void
    setResolutions(float[] resolutions)
    Sets the resolutions to the specific value for a specific slice indicated by the index parameter.
    void
    setResolutions(int index, float[] resolutions)
    Sets the resolutions to the specific value for a specific slice indicated by the index parameter.
    final void
    setShort(int x, int y, short value)
    2D fast version of set that does NOT perform bounds checking.
    final void
    setShort(int position, short value)
    Sets the image voxel at the specified position to the specified value.
    void
    setSigmaU(float _sigmaU)
    DOCUMENT ME!
    void
    setSigmaV(float _sigmaV)
    DOCUMENT ME!
    void
    setTheta(float _theta)
    DOCUMENT ME!
    final void
    setType(int type)
    Sets the type of data.
    final void
    Sets the type of data.
    final void
    setUByte(int[] position, short value)
    Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
    final void
    setUByte(int x, int y, int z, int b, short value)
    Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.
    final void
    setUByte(int x, int y, int z, short value)
    Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
    final void
    setUByte(int x, int y, short value)
    Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
    final void
    setUByte(int position, short value)
    Sets the image voxel at the specified position to the specified value.
    final void
    setUInt(int[] position, long value)
    Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
    final void
    setUInt(int x, int y, int z, int t, long value)
    Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.
    final void
    setUInt(int x, int y, int z, long value)
    Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
    final void
    setUInt(int x, int y, long value)
    Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
    final void
    setUInt(int position, long value)
    Sets the image voxel at the specified position to the specified value. version of set that does NOT perform bounds checking.
    void
    setUnequalDim(boolean unequalDimension)
    Accessor that sets the boolean telling if unequal dimesnions are allowed in a complex image.
    final void
    setUShort(int[] position, int value)
    Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
    final void
    setUShort(int position, int value)
    Sets the image voxel at the specified position to the specified value.
    final void
    setUShort(int x, int y, int value)
    Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
    final void
    setUShort(int x, int y, int z, int value)
    Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
    final void
    setUShort(int x, int y, int z, int b, int value)
    Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.

    Methods inherited from class gov.nih.mipav.model.structures.ModelSerialCloneable

    nativeClone

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Use serialVersionUID for interoperability.
      See Also:
    • UNLOCKED

      public static final int UNLOCKED
      Used to indicate that the buffer is unlocked and can be writen to or read from.
      See Also:
    • RW_LOCKED

      public static final int RW_LOCKED
      Used to indicate that the buffer is locked from reading.
      See Also:
    • W_LOCKED

      public static final int W_LOCKED
      Used to indicate that the buffer is locked from writing.
      See Also:
    • NEAREST

      public static final int NEAREST
      Used to indicate nearest neighbor interpolation.
      See Also:
    • LINEAR

      public static final int LINEAR
      Used to indicate linear (ie. bilinear, trilinear) interpolation.
      See Also:
    • TAYLOR

      public static final int TAYLOR
      Used to indicate Taylor series interpolation.
      See Also:
    • BOOLEAN

      public static final int BOOLEAN
      Used to indicate that the data buffer is of type Boolean (1 bit per voxel).
      See Also:
    • BYTE

      public static final int BYTE
      Used to indicate that the data buffer is of type signed byte (8 bits per voxel).
      See Also:
    • UBYTE

      public static final int UBYTE
      Used to indicate that the data buffer is of type unsigned byte (8 bits per voxel).
      See Also:
    • SHORT

      public static final int SHORT
      Used to indicate that the data buffer is of type signed short (16 bits per voxel).
      See Also:
    • USHORT

      public static final int USHORT
      Used to indicate that the data buffer is of type unsigned short (16 bits per voxal).
      See Also:
    • INTEGER

      public static final int INTEGER
      Used to indicate that the data buffer is of type signed integer (32 bits per voxel).
      See Also:
    • UINTEGER

      public static final int UINTEGER
      Used to indicate that the data buffer is of type unsigned integer (32 bits per voxel).
      See Also:
    • LONG

      public static final int LONG
      Used to indicate that the data buffer is of type signed long integer (64 bits per voxel).
      See Also:
    • FLOAT

      public static final int FLOAT
      Used to indicate that the data buffer is of type float (32 bits per voxel).
      See Also:
    • DOUBLE

      public static final int DOUBLE
      Used to indicate that the data buffer is of type double (64 bits per voxel).
      See Also:
    • ARGB

      public static final int ARGB
      Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a unsigned byte value. (4 * UBYTE(8 bits) = 4 bytes)
      See Also:
    • ARGB_USHORT

      public static final int ARGB_USHORT
      Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a unsigned short value. (4 * USHORT(16 bits) = 8 bytes)
      See Also:
    • ARGB_FLOAT

      public static final int ARGB_FLOAT
      Used to indicate that the data buffer is of type ARGB where each channel (A = alpha, R = red, G = green, B = blue) is represented by a float value. (4 * FLOAT(32 bits) = 16 bytes)
      See Also:
    • ARGB_UINTEGER

      public static final int ARGB_UINTEGER
      See Also:
    • COMPLEX

      public static final int COMPLEX
      Used to indicate that the data buffer is of complex type floats (2 x 64 bits per voxel).
      See Also:
    • DCOMPLEX

      public static final int DCOMPLEX
      Used to indicate that the data buffer is of complex type of doubles (2 x 128 bits per voxel).
      See Also:
    • BOOLEAN_STRING

      public static final String BOOLEAN_STRING
      Used to indicate, as a String, that the data buffer is of type boolean.
      See Also:
    • BYTE_STRING

      public static final String BYTE_STRING
      Used to indicate, as a String, that the data buffer is of type byte.
      See Also:
    • UBYTE_STRING

      public static final String UBYTE_STRING
      Used to indicate, as a String, that the data buffer is of type unsigned byte.
      See Also:
    • SHORT_STRING

      public static final String SHORT_STRING
      Used to indicate, as a String, that the data buffer is of type signed short.
      See Also:
    • USHORT_STRING

      public static final String USHORT_STRING
      Used to indicate, as a String, that the data buffer is of type unsigned short.
      See Also:
    • INTEGER_STRING

      public static final String INTEGER_STRING
      Used to indicate, as a String, that the data buffer is of type signed integer.
      See Also:
    • LONG_STRING

      public static final String LONG_STRING
      Used to indicate, as a String, that the data buffer is of type signed long.
      See Also:
    • FLOAT_STRING

      public static final String FLOAT_STRING
      Used to indicate, as a String, that the data buffer is of type signed float.
      See Also:
    • DOUBLE_STRING

      public static final String DOUBLE_STRING
      Used to indicate, as a String, that the data buffer is of type signed double.
      See Also:
    • ARGB_STRING

      public static final String ARGB_STRING
      Used to indicate, as a String, that the data buffer is of type color (ARGB - unsigned bytes).
      See Also:
    • ARGB_USHORT_STRING

      public static final String ARGB_USHORT_STRING
      Used to indicate, as a String, that the data buffer is of type color (ARGB - unsigned shorts).
      See Also:
    • ARGB_UINTEGER_STRING

      public static final String ARGB_UINTEGER_STRING
      See Also:
    • ARGB_FLOAT_STRING

      public static final String ARGB_FLOAT_STRING
      Used to indicate, as a String, that the data buffer is of type color (ARGB - floats).
      See Also:
    • COMPLEX_STRING

      public static final String COMPLEX_STRING
      Used to indicate, as a String, that the data buffer is of type complex (float).
      See Also:
    • DCOMPLEX_STRING

      public static final String DCOMPLEX_STRING
      Used to indicate, as a String, that the data buffer is of type complex (double).
      See Also:
    • UINTEGER_STRING

      public static final String UINTEGER_STRING
      Used to indicate, as a String, that the data buffer is of type unsigned integer.
      See Also:
    • bufferTypeStr

      public static final String[] bufferTypeStr
      Deprecated.
      should use enums directly
      String representations of the data types supported by ModelStorageBase.
    • fileInfo

      protected FileInfoBase[] fileInfo
      Each image slice has a information that describes aspects of each slice of an image.
    • lastMin

      protected double lastMin
      lastMin and lastMax store the last min and max values for an image. these are used as a trigger for resetting the transfer function.
    • lastMax

      protected double lastMax
      lastMin and lastMax store the last min and max values for an image. these are used as a trigger for resetting the transfer function.
    • bufferType

      private ModelStorageBase.DataType bufferType
      Type of image buffer (i.e. BOOLEAN, BYTE, UBYTE, SHORT ...)
    • data

      private BufferBase data
      Storage location of image data.
    • dataSize

      private int dataSize
      Total buffer length.
    • dimExtents

      private int[] dimExtents
      Bounds of the image where.
      • dimExtents[0] = x dimension
      • dimExtents[1] = y dimension
      • dimExtents[2] = z dimension (typically)
      • dimExtents[3] = fourth dimension (ie time)...
    • dimOriginalExtents

      private int[] dimOriginalExtents
      Bounds of the image where.
      • dimOriginalExtents[0] = x dimension
      • dimOriginalExtents[1] = y dimension
      • dimOriginalExtents[2] = z dimension (typically)
      • dimOriginalExtents[3] = fourth dimension (ie time)...
    • filterType

      private int filterType
      DOCUMENT ME! - TO BE MOVED - redesigned
    • freq1

      private float freq1
      DOCUMENT ME! - TO BE MOVED - redesigned
    • freq2

      private float freq2
      DOCUMENT ME! - TO BE MOVED - redesigned
    • freqU

      private float freqU
      5 variables used in Gabor transform. - should be removed - redesigned
    • freqV

      private float freqV
      DOCUMENT ME! - TO BE MOVED - redesigned
    • haveWindowed

      private boolean haveWindowed
      DOCUMENT ME! - TO BE MOVED - redesigned
    • image25D

      private boolean image25D
      Boolean telling if 3D images are processed 1 slice at a time.
    • lockStatus

      private int lockStatus
      Locking status of the image. Default = UNLOCKED
    • logMagDisp

      protected boolean logMagDisp
      Boolean telling if log magnitude display is used for the data buffer
    • m_bConvolve

      private boolean m_bConvolve
      Set to true when the image is the product of the ffts of two images, so that on an inverse_fft this image will be centered properly. Default is false.
    • m_bRadiologicalView

      private boolean m_bRadiologicalView
      When true, display the data in the Radiological View, when false display the Neurological View:.
    • m_kColorVector

      private final Vector<WildMagic.LibFoundation.Mathematics.ColorRGBA> m_kColorVector
      Surface color vector. - TO BE MOVED - redesigned
    • m_kMaskColorVector

      private final Vector<WildMagic.LibFoundation.Mathematics.ColorRGBA[]> m_kMaskColorVector
      Surface mask color vector. - TO BE MOVED - redesigned
    • m_kMaskVector

      private final Vector<BitSet> m_kMaskVector
      Surface mask vector.- TO BE MOVED - redesigned.
    • min

      private double min
      Minimum and maximum image intensity.
    • max

      private double max
      Minimum and maximum image intensity.
    • minA

      private double minA
      Minimum and maximum for a color image.
    • maxA

      private double maxA
      Minimum and maximum for a color image.
    • minR

      private double minR
      Minimum and maximum for a color image.
    • maxR

      private double maxR
      Minimum and maximum for a color image.
    • minG

      private double minG
      Minimum and maximum for a color image.
    • maxG

      private double maxG
      Minimum and maximum for a color image.
    • minB

      private double minB
      Minimum and maximum for a color image.
    • maxB

      private double maxB
      Minimum and maximum for a color image.
    • nDims

      private int nDims
      Number of dimensions of the data.
    • noLogMin

      private double noLogMin
      Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    • noLogMax

      private double noLogMax
      Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    • noLogMinNonZero

      private double noLogMinNonZero
      Minimum and maximum image intensity with log magnitude operation removed. - TO BE MOVED
    • nonZeroMin

      private double nonZeroMin
      Minimum and maximum nonzero intensity. - TO BE MOVED - redesigned
    • nonZeroMax

      private double nonZeroMax
      Minimum and maximum nonzero intensity. - TO BE MOVED - redesigned
    • nonZeroMinR

      private double nonZeroMinR
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • nonZeroMaxR

      private double nonZeroMaxR
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • nonZeroMinG

      private double nonZeroMinG
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • nonZeroMaxG

      private double nonZeroMaxG
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • nonZeroMinB

      private double nonZeroMinB
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • nonZeroMaxB

      private double nonZeroMaxB
      Minimum and maximum nonzero image RGB. - TO BE MOVED - redesigned
    • originalFilterOrder

      private int originalFilterOrder
      DOCUMENT ME!- TO BE MOVED - redesigned.
    • originalEpsilon

      private double originalEpsilon
      The maximum filter ripple in Chebyshev I and II The passband ripple in decibels in Elliptic
    • originalRs

      private double originalRs
      Decibels stopband is down in Elliptic
    • originalCropCheckbox

      private boolean originalCropCheckbox
      DOCUMENT ME!- TO BE MOVED - redesigned.
    • originalDoCrop

      private boolean originalDoCrop
      DOCUMENT ME! - TO BE MOVED - redesigned
    • originalEnd

      private int[] originalEnd
      DOCUMENT ME!- TO BE MOVED - redesigned.
    • originalFilterConstruction

      private int originalFilterConstruction
      DOCUMENT ME! - TO BE MOVED- redesigned
    • originalKernelDimension

      private int originalKernelDimension
      This are variables used by the FFT filter algorithm. - should be removed - redesigned
    • originalStart

      private int[] originalStart
      DOCUMENT ME! - TO BE MOVED - redesigned
    • sigmaU

      private float sigmaU
      DOCUMENT ME! - TO BE MOVED - redesigned
    • sigmaV

      private float sigmaV
      DOCUMENT ME! - should be removed - redesigned
    • smallestMagnitudeNegative

      private double smallestMagnitudeNegative
      smallest magnitude negative and positive.
    • smallestMagnitudePositive

      private double smallestMagnitudePositive
      smallest magnitude negative and positive.
    • smallestMagnitudeNegativeR

      private double smallestMagnitudeNegativeR
      smallest magnitude negative and positive.
    • smallestMagnitudePositiveR

      private double smallestMagnitudePositiveR
      smallest magnitude negative and positive.
    • smallestMagnitudeNegativeG

      private double smallestMagnitudeNegativeG
      smallest magnitude negative and positive.
    • smallestMagnitudePositiveG

      private double smallestMagnitudePositiveG
      smallest magnitude negative and positive.
    • smallestMagnitudeNegativeB

      private double smallestMagnitudeNegativeB
      smallest magnitude negative and positive.
    • smallestMagnitudePositiveB

      private double smallestMagnitudePositiveB
      smallest magnitude negative and positive.
    • theta

      private float theta
      DOCUMENT ME! - TO BE MOVED - redesigned
    • unequalDim

      private boolean unequalDim
      Boolean telling if unequal dimensions are allowed in the FFT image. TO BE MOVED
    • writeLockCount

      private int writeLockCount
      Locking write count.
    • avgInten

      private float avgInten
    • avgIntenR

      private float avgIntenR
    • avgIntenG

      private float avgIntenG
    • avgIntenB

      private float avgIntenB
    • stdDeviation

      private float stdDeviation
    • stdDeviationR

      private float stdDeviationR
    • stdDeviationG

      private float stdDeviationG
    • stdDeviationB

      private float stdDeviationB
    • numPixels

      private int numPixels
    • sumPixelInten

      private double sumPixelInten
    • sumPixelIntenR

      private double sumPixelIntenR
    • sumPixelIntenG

      private double sumPixelIntenG
    • sumPixelIntenB

      private double sumPixelIntenB
  • Constructor Details

    • ModelStorageBase

      public ModelStorageBase()
      Default constructor.
    • ModelStorageBase

      public ModelStorageBase(int type, int[] dimExtents)
      Allocates buffer memory of the specified type.
      Parameters:
      type - type of buffer to allocate
      dimExtents - extents of the buffer in each dimension (multipleid together produces the size of the buffer to be allocated
    • ModelStorageBase

      public ModelStorageBase(ModelStorageBase.DataType type, int[] dimExtents)
      Allocates buffer memory of the specified type.
      Parameters:
      type - type of buffer to allocate
      dimExtents - extents of the buffer in each dimension (multipleid together produces the size of the buffer to be allocated
  • Method Details

    • getBufferTypeStr

      public static String getBufferTypeStr(int type)
      Returns the string for a particular buffer type.
      Parameters:
      type - int representing the buffer type (see the static definitions)
      Returns:
      string representing the buffer type
    • addSurfaceMask

      public void addSurfaceMask(int index, BitSet kMask, WildMagic.LibFoundation.Mathematics.ColorRGBA[] kMaskColors, WildMagic.LibFoundation.Mathematics.ColorRGBA kColor)
      Adds a surface mask to this image.
      Parameters:
      index - the index of the mask.
      kMask - the surface mask
      kMaskColors - the per-voxel colors for the mask
      kColor - the overall mask color if per-voxel mask colors are not defined.
    • calcMinMax

      public void calcMinMax()
      Calculates the min and max values for the image array.
    • calcMinMax

      public void calcMinMax(boolean logMagDisplay)
      Parameters:
      logMagDisplay - if true calculate min and max for log10 of 1 + magnitude Calculates the min and max values for the image array.
    • calcMinMaxMag

      public void calcMinMaxMag(boolean logMagDisplay)
      Calculates the min and max magnitude values for the image array.
      Parameters:
      logMagDisplay - if true calculate min and max for log10 of 1 + magnitude
    • calcMinMaxNonZero

      public void calcMinMaxNonZero()
      Calculates the min and max nonzero values for the image array.
    • clone

      public Object clone()
      Copies the object.
      Overrides:
      clone in class ModelSerialCloneable
      Returns:
      Returns the cloned object.
    • convertToFloat

      public void convertToFloat() throws IOException
      Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
      Throws:
      IOException - throws an exception if the image model is locked.
    • disposeLocal

      public void disposeLocal()
      Dispose of memory and call the garbage collector.
    • export

      public final float[] export(int orientation, int tSlice, int slice, float[] values, boolean bMask) throws IOException
      Exports data based on the mapping from ModelImage space to Patient space.
      Parameters:
      orientation - The Patient Orientation of the slice to export
      tSlice - Index into the forth dimension
      slice - Indicates slice of data to be exported
      values - The array in which to write the data
      Returns:
      A float array of the data mapped to patient space.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • export

      public final float[] export(int[] axisOrder, boolean[] axisFlip, int tSlice, int slice, float[] values, boolean bMask) throws IOException
      Exports data based on the mapping from ModelImage space to Patient space. The mapping parameters are passed in as the axisOrder and axisFlip arrays.
      Parameters:
      axisOrder - The mapping of ModelImage space volume axes to Patient space axes
      axisFlip - The mapping of ModelImage space volume axes to Patient space axes (invert flags)
      tSlice - Index into the forth dimension
      slice - Indicates slice of data to be exported
      values - The array to write the data into
      Returns:
      A float array of the data mapped to patient space.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportComplexData

      public final void exportComplexData(int start, int length, float[] valuesR, float[] valuesI) throws IOException
      Export data to the real values and the images values arrays.
      Parameters:
      start - Indicates starting position in data array
      length - Length of complex data (in 2 float units) to be copied from data array
      valuesR - Array where real data is to be deposited
      valuesI - Array where imaginary data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportComplexSliceXY

      public final void exportComplexSliceXY(int slice, float[] values, boolean logMagDisplay) throws IOException
      Export XY slice magnitude data into values array.
      Parameters:
      slice - indicates slice of data to be exported
      values - array where data is to be deposited
      logMagDisplay - if true display log10 of 1 + data
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final Object exportData(int start, int length) throws IOException
      Export data into values array, in the native type of the model image.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      Returns:
      Object, new array where data has been deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(Object value_array) throws IOException
      Import Object. Imports Object array that is exported with the exportData function.
      Parameters:
      value_array - Object storing data.
      Throws:
      IOException
    • exportData

      public final void exportData(int start, int length, Number[] values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, BitSet values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, byte[] values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, short[] values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, int[] values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, long[] values) throws IOException
      Export data into values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, float[] values) throws IOException
      Export data to values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length, double[] values) throws IOException
      Export data in values array.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportData

      public final void exportData(int start, int length0, int length1, float[] values) throws IOException
      export data to values array.
      Parameters:
      start - indicates starting position in data array
      length0 - length of first dimension of data to be copied from data array
      length1 - length of second dimension of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, Number[] values) throws IOException
      export data into values array WITHOUT locking.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, BitSet values) throws IOException
      export data into values array WITHOUT locking.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, byte[] values) throws IOException
      Export data into values array WITHOUT locking.
      Parameters:
      start - Indicates starting position in data array
      length - Length of data to be copied from data array
      values - Array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, short[] values) throws IOException
      Export data into values array WITHOUT locking.
      Parameters:
      start - Indicates starting position in data array
      length - Length of data to be copied from data array
      values - Array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, int[] values) throws IOException
      Export data into values array WITHOUT locking.
      Parameters:
      start - Indicates starting position in data array
      length - Length of data to be copied from data array
      values - Array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, long[] values) throws IOException
      export data into values array WITHOUT locking.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, float[] values) throws IOException
      export data in values array WITHOUT using locking.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDataNoLock

      public final void exportDataNoLock(int start, int length, double[] values) throws IOException
      export data into values array WITHOUT locking.
      Parameters:
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a bounds error.
    • exportDComplexData

      public final void exportDComplexData(int start, int length, double[] valuesR, double[] valuesI) throws IOException
      Export data to the real values and the imaginary values arrays.
      Parameters:
      start - indicates starting position in data array
      length - length of complex data (in 2 float units) to be copied from data array
      valuesR - array where real data is to be deposited
      valuesI - array where imaginary data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportDiagonal

      public final void exportDiagonal(int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float[] values, boolean bInterpolate) throws IOException
      ShowDiagonal samples the ModelImage data along a non-axis aligned plane. The plane may intersect the ModelImage volume, defined in x,y,z space, along a diagonal direction.

      This function steps through the image, using the four transformed points to step through the ModelImage along the diagonal directions, read the corresonding point in the ModelImage and write the value into the image array. If bInterpolate is set to true, the ModelImage data for non-interger vertices is interpolated using tri-linear interpolation. Note: there is one loop for steping though he data, no matter which type of plane this object represents (XY, XZ, or ZY).

      Parameters:
      tSlice - Index into the forth dimension
      slice - Indicates slice of data to be exported
      extents - Image extents in the local coordinate system.
      verts - The rotated non-axis aligned corners of the slice
      values - The array in which to write the data.
      bInterpolate - If true then use interpolation.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportDiagonal

      public final void exportDiagonal(int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float[] values, boolean bInterpolate, BitSet imageMask, Vector<BitSet> surfaceMask, boolean[] surfaceValues) throws IOException
      Throws:
      IOException
    • exportDiagonal

      public final void exportDiagonal(BitSet duplicateMask, int tSlice, int slice, int[] extents, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float diameter, boolean bSetZero, float[] values, boolean bInterpolate) throws IOException
      ShowDiagonal samples the ModelImage data along a non-axis aligned plane. The plane may intersect the ModelImage volume, defined in x,y,z space, along a diagonal direction.

      This function steps through the image, using the four transformed points to step through the ModelImage along the diagonal directions, read the corresonding point in the ModelImage and write the value into the image array. If bInterpolate is set to true, the ModelImage data for non-interger vertices is interpolated using tri-linear interpolation. Note: there is one loop for steping though he data, no matter which type of plane this object represents (XY, XZ, or ZY).

      Parameters:
      tSlice - Index into the forth dimension
      slice - Indicates slice of data to be exported
      extents - Image extents in the local coordinate system.
      verts - The rotated non-axis aligned corners of the slice
      values - The array in which to write the data.
      bInterpolate - If true then use interpolation.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • findMax

      public final WildMagic.LibFoundation.Mathematics.Vector3f findMax(int tSlice, int slice, WildMagic.LibFoundation.Mathematics.Vector3f[] verts, float diameter, boolean bInterpolate) throws IOException
      Throws:
      IOException
    • exportDMagData

      public final void exportDMagData(int start, int length, double[] values) throws IOException
      Export magnitude data to values array.
      Parameters:
      start - indicates starting position in data array
      length - length of magnitude data to be copied from data array
      values - array where magnitude data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportMagData

      public final void exportMagData(int start, int length, float[] values) throws IOException
      export magnitude data to values array.
      Parameters:
      start - indicates starting position in data array
      length - length of magnitude data to be copied from data array
      values - array where magnitude data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportMagData

      public final void exportMagData(int start, int length, double[] values) throws IOException
      export magnitude data to values array.
      Parameters:
      start - indicates starting position in data array
      length - length of magnitude data to be copied from data array
      values - array where magnitude data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBData

      public final Object exportRGBData(int offset, int start, int length) throws IOException
      export data in values array.
      Parameters:
      offset - correct offset for RED, GREEN, or BLUE component to be exported
      start - indicates starting position in data array
      length - length of data to be copied from data array
      Returns:
      Object, new array where data has been deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBData

      public final void exportRGBData(int offset, int start, int length, byte[] values) throws IOException
      export data in values array.
      Parameters:
      offset - correct offset for RED, GREEN, or BLUE component to be exported
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBData

      public final void exportRGBData(int offset, int start, int length, short[] values) throws IOException
      export data in values array.
      Parameters:
      offset - correct offset for RED, GREEN, or BLUE component to be exported
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBData

      public final void exportRGBData(int offset, int start, int length, float[] values) throws IOException
      export data in values array.
      Parameters:
      offset - correct offset for RED, GREEN, or BLUE component to be exported
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBData

      public final void exportRGBData(int offset, int start, int length, double[] values) throws IOException
      export data in values array.
      Parameters:
      offset - correct offset for RED, GREEN, or BLUE component to be exported
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBDataNoLock

      public final void exportRGBDataNoLock(int offset, int start, int length, float[] values) throws IOException
      Export data in values array WITHOUT using locking.
      Parameters:
      offset - offset into the data array
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportRGBDataNoLock

      public final void exportRGBDataNoLock(int offset, int start, int length, double[] values) throws IOException
      Export data in values array WITHOUT using locking.
      Parameters:
      offset - offset into the data array
      start - indicates starting position in data array
      length - length of data to be copied from data array
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, byte[] values) throws IOException
      Export XY slice into values array.
      Parameters:
      slice - Indicates slice of data to be exported
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, short[] values) throws IOException
      Export XY slice into values array.
      Parameters:
      slice - Indicates slice of data to be exported.
      values - Array where data is to be deposited.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, int[] values) throws IOException
      Export XY slice into values array.
      Parameters:
      slice - Indicates slice of data to be exported.
      values - Array where data is to be deposited.
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, long[] values) throws IOException
      export XY slice into values array.
      Parameters:
      slice - indicates slice of data to be exported
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, float[] values) throws IOException
      export XY slice into values array.
      Parameters:
      slice - indicates slice of data to be exported
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • exportSliceXY

      public final void exportSliceXY(int slice, double[] values) throws IOException
      export XY slice into values array.
      Parameters:
      slice - indicates slice of data to be exported
      values - array where data is to be deposited
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • get

      public final Number get(int position)
      function to get data where bounds checking is performed.
      Parameters:
      position - position in one dimensional array
      Returns:
      returns value if position in data array range
    • get

      public final Number get(int[] position)
      nD get data fuction where bounds checking is performed.
      Parameters:
      position - array of coordinate values
      Returns:
      returns true if position in data array range
    • get

      public final Number get(int x, int y)
      2D get data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      returns value if position in data array range
    • get

      public final Number get(int x, int y, int z)
      3D get data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      returns value if position in data array range
    • get

      public final Number get(int x, int y, int z, int b)
      4D get data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate (ie. multi-modality images or time)
      Returns:
      returns true if position in data array range
    • getAxisOrientation

      public int[] getAxisOrientation()
      Returns the axis orientation of image.
      Returns:
      the axis orientation of image
    • getBiLinear

      public final Number getBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The Number of the bilinearly interpolated data.
    • getBoolean

      public final boolean getBoolean(int position)
      Version of get that does NOT perform bounds checking.
      Parameters:
      position - index into the data.
      Returns:
      The boolean value from the data array.
    • getBoolean

      public final boolean getBoolean(int[] position)
      n-Dimensional get data fuction where bounds checking is NOT performed.
      Parameters:
      position - index into the data
      Returns:
      returns true if position in data array range
    • getBoolean

      public final boolean getBoolean(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value
    • getBoolean

      public final boolean getBoolean(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate*
      Returns:
      The value at that position in the data array.
    • getBoolean

      public final boolean getBoolean(int x, int y, int z, int b)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - 4th dimension coordinate.*
      Returns:
      The value at that position in the data array.
    • getByte

      public final byte getByte(int position)
      Version of get that does NOT perform bounds checking
      Parameters:
      position - position in one dimensional array.
      position - Indexe into the data array.
      Returns:
      The value at that position in the data array.
    • getByte

      public final byte getByte(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      Returns:
      returns true if position in data array range
    • getByte

      public final byte getByte(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value at that position in the data array
    • getByte

      public final byte getByte(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      value at that position in the data array
    • getByte

      public final byte getByte(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate (usually the slice plane index)
      t - t coordinate (usually the volume index)
      Returns:
      value at that position in the data array
    • getByteBiLinear

      public final byte getByteBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value from the data array.
    • getByteTriLinear

      public final byte getByteTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The interpolated value from the data array.
    • getC

      public final Number getC(int position, int color)
      Color function to get data where bounds checking is performed.
      Parameters:
      position - position in one dimensional array
      color - DOCUMENT ME!
      Returns:
      returns value if position in data array range
    • getConvolve

      public boolean getConvolve()
      Accessor method for the m_bConvolve data memeber.
      Returns:
      m_bConvolve, true when this images is the product of fft( imageA ) fft( imageB )
    • getDouble

      public final double getDouble(int position)
      The interpolated value from the data array.ersion of get that does NOT perform bounds checking.
      Parameters:
      position - index into one dimensional array
      Returns:
      The value from the data array.
    • getDouble

      public final double getDouble(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - Index into one dimensional array
      Returns:
      The value from the data array.
    • getDouble

      public final double getDouble(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      Value at that position in the data array
    • getDouble

      public final double getDouble(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      Value at that position in the data array
    • getDouble

      public final double getDouble(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate (usually the volume index)*
      Returns:
      The value at that position in the data array.
    • getDoubleBiLinear

      public final double getDoubleBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getDoubleTriLinear

      public final double getDoubleTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array.
    • getExtents

      public final int[] getExtents()
      Accessor that returns the extents of the image.
      Returns:
      array of ints indicating the extents in each dimension
    • getExtents

      public final int[] getExtents(int orientation)
      Returns the image extents translated into the Patient-Coordinate systsm:
      Parameters:
      orientation - the Patient-Coordinate view for which the extents are needed:
      Returns:
      Extents for the image in Patient Coordinates
    • getExtents

      public final int[] getExtents(int[] aiAxisOrder)
      Returns the image extents translated into the Patient-Coordinate system:
      Parameters:
      aiAxisOrder - the Patient-Coordinate order of the original data for which the extents are needed:
      Returns:
      Extents for the image in Patient Coordinates
    • getExtentsSize

      public final int[] getExtentsSize(int orientation)
    • getFileInfo

      public FileInfoBase[] getFileInfo()
      Accessor that returns the fileInfo array (one per slice).
      Returns:
      fileInfo array structure
    • getFileInfo

      public FileInfoBase getFileInfo(int i)
      Accessor that returns the fileInfo of a specific image slice.
      Parameters:
      i - index that indicates image slice
      Returns:
      fileInfo array structure for a specific image slice
    • getFilterType

      public final int getFilterType()
      returns type of filter - low, high, bandpass, or bandstop. - TO BE MOVED
      Returns:
      filterType
    • getFloat

      public final float getFloat(int position)
      Version of get that does NOT perform bounds checking.
      Parameters:
      position - index into the one dimensional data array
      Returns:
      The value at that position in the data array.
    • getFloat

      public final float getFloat(int[] position)
      nD get data function where bounds checking is NOT performed.
      Parameters:
      position - index into the one dimensional data array
      Returns:
      The value at that position in the data array.
    • getFloat

      public final float getFloat(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The value at that position in the data array.
    • getFloat

      public final float getFloat(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array.
    • getFloat

      public final float getFloat(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      The value at that position in the data array.
    • getFloatBiLinear

      public final float getFloatBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getFloatC

      public final float getFloatC(int x, int y, int c)
      2D color get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      c - color channel index
      Returns:
      value at that position in the data array
    • getFloatC

      public final float getFloatC(int x, int y, int z, int c)
      3D color get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      c - color channel index
      Returns:
      value at that position in the data array
    • getFloatC

      public final float getFloatC(int x, int y, int z, int t, int c)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      c - color channel index
      Returns:
      The value at that position in the data array.
    • getFloatTriLinear

      public final float getFloatTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array.
    • getFloatTriLinearBounds

      public final float getFloatTriLinearBounds(float x, float y, float z)
      Get a value using tri-linear interpoloation. Note - DOES perform bounds checking (both that x,y,z are valid and that the interp indicies don't cause exceptions).
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      interpolated value if in bounds, 0 if not.
    • getFloatTriLinearBoundsTime

      public final float getFloatTriLinearBoundsTime(float x, float y, float z, int t)
      Get a value using tri-linear interpoloation. Note - DOES perform bounds checking (both that x,y,z are valid and that the interp indicies don't cause exceptions).
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      interpolated value if in bounds, 0 if not.
    • getFloatTriLinearBounds

      public final float getFloatTriLinearBounds(float x, float y, float z, int c)
      Get a value using tri-linear interpoloation. Note - DOES perform bounds checking (both that x,y,z are valid and that the interp indicies don't cause exceptions).
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      c - color-coordinate
      Returns:
      interpolated value if in bounds, 0 if not.
    • getFreq1

      public final float getFreq1()
      returns frequency 1 of filter.
      Returns:
      freq1
    • getFreq2

      public final float getFreq2()
      returns frequency 2 of filter.
      Returns:
      freq2
    • getFreqU

      public final float getFreqU()
      returns frequency U of filter.
      Returns:
      freqU
    • getFreqV

      public final float getFreqV()
      returns frequency V of filter.
      Returns:
      freqV
    • getHaveWindowed

      public final boolean getHaveWindowed()
      DOCUMENT ME! - TO BE MOVED
      Returns:
      DOCUMENT ME!
    • getHeight

      public int getHeight(int orientation)
      Returns the image height, based on the Patient Coordinates orientation from which the data will be viewed:
      Parameters:
      orientation - the Patient-Viewing orientation
      Returns:
      The image height for the viewing orientation
    • getImage25D

      public boolean getImage25D()
      Accessor that returns the boolean indicating if 3D images are processed one slice at a time.
      Returns:
      boolean telling if slice by slice processing occurs in 3D
    • getImageOrientation

      public int getImageOrientation()
      Gets the image orientation (sagittal, axial, ...).
      Returns:
      integer representing the orientation
    • getInt

      public final int getInt(int position)
      Version of get that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      Returns:
      value at that position in the data array
    • getInt

      public final int getInt(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      Returns:
      returns true if position in data array range
    • getInt

      public final int getInt(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value at that position in the data array
    • getInt

      public final int getInt(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      value at that position in the data array
    • getInt

      public final int getInt(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      The value at that position in the data array
    • getIntBiLinear

      public final int getIntBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array
    • getIntTriLinear

      public final int getIntTriLinear(float x, float y, float z)
      Version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array
    • getLockStatus

      public final int getLockStatus()
      Accessor that returns the lock status of the image.
      Returns:
      lock status
    • getLogMagDisplay

      public boolean getLogMagDisplay()
      Accessor that returns the boolean indicating if log magnitude displays are used in complex images.
      Returns:
      boolean telling if log display is used
    • getLong

      public final long getLong(int position)
      Version of get that does NOT perform bounds checking.
      Parameters:
      position - The index in one dimensional array
      Returns:
      The value at that position in the data array
    • getLong

      public final long getLong(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - The index in one dimensional array
      Returns:
      The value at that position in the data array
    • getLong

      public final long getLong(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value at that position in the data array
    • getLong

      public final long getLong(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      value at that position in the data array
    • getLong

      public final long getLong(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      value at that position in the data array
    • getLongBiLinear

      public final long getLongBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array
    • getLongTriLinear

      public final long getLongTriLinear(float x, float y, float z)
      Version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The interpolated value at that position in the data array
    • getMax

      public double getMax()
      Accessor that returns the maximum value in the dataArray.
      Returns:
      double indicating maximum value in the dataArray
    • getMaxA

      public double getMaxA()
      Accessor that returns the maximum alpha value in the dataArray.
      Returns:
      double indicating maximum alpha value in the dataArray
    • getMaxB

      public double getMaxB()
      Accessor that returns the maximum blue value in the dataArray.
      Returns:
      double indicating maximum blue value in the dataArray
    • getMaxG

      public double getMaxG()
      Accessor that returns the maximum green value in the dataArray.
      Returns:
      double indicating maximum green value in the dataArray
    • getMaxR

      public double getMaxR()
      Accessor that returns the maximum red value in the dataArray.
      Returns:
      double indicating maximum red value in the dataArray
    • getMin

      public double getMin()
      Accessor that returns the minimum value in the dataArray.
      Returns:
      double indicating minimum value in the dataArray
    • getMinA

      public double getMinA()
      Accessor that returns the minimum alpha value in the dataArray.
      Returns:
      double indicating minimum alpha value in the dataArray
    • getMinB

      public double getMinB()
      Accessor that returns the minimum blue value in the dataArray.
      Returns:
      double indicating minimum blue value in the dataArray
    • getMinG

      public double getMinG()
      getMinG - Accessor that returns the minimum green value in the dataArray.
      Returns:
      double indicating minimum green value in the dataArray
    • getMinR

      public double getMinR()
      Accessor that returns the minimum red value in the dataArray.
      Returns:
      double indicating minimum red value in the dataArray
    • getNDims

      public final int getNDims()
      Accessor that returns the dimensionality of the image.
      Returns:
      int indicating the number of dimensions
    • getNoLogMax

      public double getNoLogMax()
      Accessor that returns the maximum value without log processing in the dataArray.
      Returns:
      double indicating maximum value in the dataArray
    • getNoLogMin

      public double getNoLogMin()
      Accessor that returns the minimum value without log processing in the dataArray.
      Returns:
      double indicating minimum value in the dataArray
    • getNoLogMinNonZero

      public double getNoLogMinNonZero()
      Accessor that returns the minimum nonzero value without log processing in the dataArray.
      Returns:
      double indicating minimum value in the dataArray
    • getNonZeroMax

      public double getNonZeroMax()
      Accessor that returns the smallest magnitude negative value in the dataArray.
      Returns:
      double indicating maximum nonzero value in the dataArray NaN if no nonzero value present
    • getNonZeroMaxB

      public double getNonZeroMaxB()
      Accessor that returns the maximum nonzero blue value in the dataArray.
      Returns:
      double indicating maximum nonzero blue value in the dataArray NaN if no nonzero blue value present
    • getNonZeroMaxG

      public double getNonZeroMaxG()
      Accessor that returns the maximum nonzero green value in the dataArray.
      Returns:
      double indicating maximum nonzero green value in the dataArray NaN if no nonzero green value present
    • getNonZeroMaxR

      public double getNonZeroMaxR()
      Accessor that returns the maximum nonzero red value in the dataArray.
      Returns:
      double indicating maximum nonzero red value in the dataArray NaN if no nonzero red value present
    • getNonZeroMin

      public double getNonZeroMin()
      Accessor that returns the minimum nonzero value in the dataArray.
      Returns:
      double indicating minimum nonzero value in the dataArray NaN if no nonzero value present
    • getNonZeroMinB

      public double getNonZeroMinB()
      Accessor that returns the minimum nonzero blue value in the dataArray.
      Returns:
      double indicating minimum nonzero blue value in the dataArray NaN if no nonzero blue value present
    • getNonZeroMinG

      public double getNonZeroMinG()
      Accessor that returns the minimum nonzero green value in the dataArray.
      Returns:
      double indicating minimum nonzero green value in the dataArray NaN if no nonzero green value present
    • getNonZeroMinR

      public double getNonZeroMinR()
      Accessor that returns the minimum nonzero red value in the dataArray.
      Returns:
      double indicating minimum nonzero red value in the dataArray NaN if no nonzero red value present
    • getOrigin

      public float[] getOrigin()
      Returns the origin of the image.
      Returns:
      the origin of the image
    • getOrigin

      public float[] getOrigin(int index, int orientation)
      Returns the image origin for the image translated into the Patient-Coordinate systsm:
      Parameters:
      index - the fileInfo index
      orientation - the Patient-Coordinate view for which the origin are needed:
      Returns:
      the origin of the image in Patient Coordinates
    • getOriginalFilterOrder

      public final int getOriginalFilterOrder()
      returns integer telling filter order. - TO BE MOVED
      Returns:
      value indicating the filter order;
    • getOriginalEpsilon

      public final double getOriginalEpsilon()
      Returns:
      value indicating the maximum filter ripple in Chdebyshev Type I and II or passband ripple in decibels in Elliptic
    • getOriginalRs

      public final double getOriginalRs()
      Decibels stopband is down in Elliptic
    • getOriginalCropCheckbox

      public final boolean getOriginalCropCheckbox()
      DOCUMENT ME! - TO BE MOVED
      Returns:
      DOCUMENT ME!
    • getOriginalDoCrop

      public final boolean getOriginalDoCrop()
      DOCUMENT ME! - TO BE MOVED
      Returns:
      DOCUMENT ME!
    • getOriginalEnd

      public final int[] getOriginalEnd()
      DOCUMENT ME! -TO BE MOVED
      Returns:
      DOCUMENT ME!
    • getOriginalExtents

      public final int[] getOriginalExtents()
      Accessor that returns the original extents of the image.
      Returns:
      array of ints indicating the original extents in each dimension
    • getOriginalFilterConstruction

      public final int getOriginalFilterConstruction()
      returns integer telling filter construction method.
      Returns:
      int showing original filter construction method
    • getOriginalKernelDimension

      public final int getOriginalKernelDimension()
      returns kernel diameter chosen on forward FFT.
      Returns:
      int showing original kernel diameter chosen on forward FFT
    • getOriginalStart

      public final int[] getOriginalStart()
      DOCUMENT ME! - TO BE MOVED
      Returns:
      DOCUMENT ME!
    • getRadiologicalView

      public boolean getRadiologicalView()
      Gets the radiological view flag:
      Returns:
      the RadiologicalView on/off
    • getResolutions

      public float[] getResolutions(int index)
      Returns the resolutions for the image without regarding resolution difference between slices.
      Parameters:
      index - The index indicating which data slice to exact the resolutions
      Returns:
      the resolutions for the data slice
    • getResolutions

      public float[] getResolutions(int index, int orientation)
      Returns the resolutions for the image translated into the Patient-Coordinate systsm:
      Parameters:
      index - the fileInfo index
      orientation - the Patient-Coordinate view for which the resolutions are needed:
      Returns:
      the resolutions for the image in Patient Coordinates
    • getResolutions

      public float[] getResolutions(int index, int[] aiAxisOrder)
      Returns the resolutions for the image translated into the Patient-Coordinate systsm:
      Parameters:
      index - the fileInfo index
      aiAxisOrder - the Patient-Coordinate order of the original data for which the resolutions are needed:
      Returns:
      the resolutions for the image in Patient Coordinates
    • getShort

      public final short getShort(int position)
      Version of get that does NOT perform bounds checking.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      The value at that position in the data array
    • getShort

      public final short getShort(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      The value at that position in the data array
    • getShort

      public final short getShort(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value at that position in the data array
    • getShort

      public final short getShort(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      value at that position in the data array
    • getShort

      public final short getShort(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      value at that position in the data array
    • getShortBiLinear

      public final short getShortBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The value at that position in the data array
    • getShortTriLinear

      public final short getShortTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The intoplated value at that position in the data array
    • getSigmaU

      public final float getSigmaU()
      returns standard deviation U of filter. TO BE MOVED
      Returns:
      sigmaU
    • getSigmaV

      public final float getSigmaV()
      returns standard deviation V of filter. TO BE MOVED
      Returns:
      sigmaV
    • getSize

      public final int getSize()
      Accessor that returns the total size(length) of the data array.
      Returns:
      Value indicating the number of data points in the data array
    • getSliceSize

      public final int getSliceSize()
      Get the nuber of pixels in a slice of the image.
      Returns:
      the number of pixels in a slice
    • getSmallestMagnitudeNegative

      public double getSmallestMagnitudeNegative()
      Accessor that returns the smallest magnitude negative value in the dataArray.
      Returns:
      value indicating smallest magnitude negative value in the dataArray NaN if no negative value is present
    • getSmallestMagnitudeNegativeB

      public double getSmallestMagnitudeNegativeB()
      Accessor that returns the smallest magnitude negative blue value in the dataArray.
      Returns:
      value indicating smallest magnitude negative blue value in the dataArray NaN if no negative blue value is present
    • getSmallestMagnitudeNegativeG

      public double getSmallestMagnitudeNegativeG()
      Accessor that returns the smallest magnitude negative green value in the dataArray.
      Returns:
      value indicating smallest magnitude negative green value in the dataArray NaN if no negative green value is present
    • getSmallestMagnitudeNegativeR

      public double getSmallestMagnitudeNegativeR()
      Accessor that returns the smallest magnitude negative red value in the dataArray.
      Returns:
      value indicating smallest magnitude negative red value in the dataArray NaN if no negative red value is present
    • getSmallestMagnitudePositive

      public double getSmallestMagnitudePositive()
      Accessor that returns the smallest magnitude positive value in the dataArray.
      Returns:
      value indicating smallest magnitude positive value in the dataArray NaN if no positive value is present
    • getSmallestMagnitudePositiveB

      public double getSmallestMagnitudePositiveB()
      Accessor that returns the smallest magnitude positive blue value in the dataArray.
      Returns:
      value indicating smallest magnitude positive blue value in the dataArray NaN if no positive blue value is present
    • getSmallestMagnitudePositiveG

      public double getSmallestMagnitudePositiveG()
      Accessor that returns the smallest magnitude positive green value in the dataArray.
      Returns:
      value indicating smallest magnitude positive green value in the dataArray NaN if no positive green value is present
    • getSmallestMagnitudePositiveR

      public double getSmallestMagnitudePositiveR()
      Accessor that returns the smallest magnitude positive red value in the dataArray.
      Returns:
      value indicating smallest magnitude positive red value in the dataArray NaN if no positive red value is present
    • getSurfaceMask

      public BitSet getSurfaceMask(int index)
      Returns the surface mask from this image.
      Parameters:
      index - the index of the mask to remove.
      Returns:
      the BitSet mask
    • getSurfaceMaskColor

      public WildMagic.LibFoundation.Mathematics.ColorRGBA getSurfaceMaskColor(int index)
      Returns the surface mask from this image.
      Parameters:
      index - the index of the mask to remove.
      Returns:
      the BitSet mask
    • getTheta

      public final float getTheta()
      Returns roation angle theta in radians of filter. TO BE MOVED
      Returns:
      theta
    • getTriLinear

      public final Number getTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The introplated value at that position in the data array
    • getType

      public final int getType()
      Accessor that returns the image buffer type.
      Returns:
      Indicates the data buffer type
    • getDataType

      public final ModelStorageBase.DataType getDataType()
      Accessor that returns the image buffer type as an enum.
      Returns:
      The data buffer type
    • getTypeString

      public final String getTypeString()
      Accessor that returns the image type.
      Returns:
      The data buffer type as a String.
    • getUByte

      public final short getUByte(int position)
      version of get that does NOT perform bounds checking.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      DOCUMENT ME!
    • getUByte

      public final short getUByte(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      The value at that position in the data array
    • getUByte

      public final short getUByte(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getUByte

      public final short getUByte(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array.
    • getUByte

      public final short getUByte(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      The value at that position in the data array
    • getUByteBiLinear

      public final short getUByteBiLinear(float x, float y)
      Version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getUByteTriLinear

      public final short getUByteTriLinear(float x, float y, float z)
      Version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getUInt

      public final long getUInt(int position)
      version of get that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      Returns:
      The value at that position in the data array.
    • getUInt

      public final long getUInt(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - The index into the array of data.
      Returns:
      The value at that position in the data array.
    • getUInt

      public final long getUInt(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      value at that position in the data array
    • getUInt

      public final long getUInt(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      value at that position in the data array
    • getUInt

      public final long getUInt(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      The value at that position in the data array.
    • getUIntBiLinear

      public final long getUIntBiLinear(float x, float y)
      version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The value at that position in the data array.
    • getUIntTriLinear

      public final long getUIntTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getUnequalDim

      public boolean getUnequalDim()
      Accessor that returns the boolean indicating if unequal dimensions are allowed in complex images. TO BE MOVED
      Returns:
      Indicated if unequal dimensions are allowed
    • getUnitsOfMeasure

      public int[] getUnitsOfMeasure()
      Returns the units used to measure all dimensions of the image.
      Returns:
      The units used to measure all dimensions of the image.
    • getUnitsOfMeasure

      public int getUnitsOfMeasure(int index)
      Returns the unit used to measure the specific dimension of image.
      Parameters:
      index - The index of specific dimension
      Returns:
      The unit used to measure the specific dimension
    • getUnitsOfMeasure

      public int[] getUnitsOfMeasure(int index, int orientation)
      Returns the units of measure for the image translated into the Patient-Coordinate systsm:
      Parameters:
      index - the fileInfo index
      orientation - the Patient-Coordinate view for which the units of measure are needed:
      Returns:
      the units of measure for the image in Patient Coordinates
    • getUShort

      public final int getUShort(int position)
      version of get that does NOT perform bounds checking.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      The value at that position in the data array
    • getUShort

      public final int getUShort(int[] position)
      nD get data fuction where bounds checking is NOT performed.
      Parameters:
      position - The index into the one dimensional array
      Returns:
      The value at that position in the data array
    • getUShort

      public final int getUShort(int x, int y)
      2D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The value at that position in the data array
    • getUShort

      public final int getUShort(int x, int y, int z)
      3D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The value at that position in the data array
    • getUShort

      public final int getUShort(int x, int y, int z, int t)
      4D get data fuction where bounds checking is NOT performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      Returns:
      The value at that position in the data array
    • getUShortBiLinear

      public final int getUShortBiLinear(float x, float y)
      Version of get that performs bi-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getUShortTriLinear

      public final int getUShortTriLinear(float x, float y, float z)
      version of get that performs tri-linear interpoloation. Note - does NOT perform bounds checking
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      Returns:
      The interpolated value at that position in the data array.
    • getVolumeIterationFactors

      public int[] getVolumeIterationFactors()
      Get the factors needed to iterate through the image volume. Can be multiplied against iterators to retreive the index into the image volume data.
      Returns:
      multiples of dimExtents[] for the image
    • getVolumeSize

      public int getVolumeSize()
      Gets the number of pixels in a volume of the image.
    • getWidth

      public int getWidth(int orientation)
      Returns the image width, based on the Patient Coordinates orientation from which the data will be viewed:
      Parameters:
      orientation - the Patient-Viewing orientation
      Returns:
      dimExtents representing the image width for the viewing orientation
    • importComplexData

      public final void importComplexData(int start, float[] valuesR, float[] valuesI, boolean mmFlag, boolean logMagDisplay) throws IOException
      import Complex data (in 2 float units) into data array.
      Parameters:
      start - indicates starting position in data array
      valuesR - array where real data is to be acquired
      valuesI - array where imaginary data is to be acquired
      mmFlag - whether or not to calculate min and max magnitude values for the image
      logMagDisplay - whether or not min and max are calculated for log10 of 1 + magnitude array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, Number[] values, boolean mmFlag) throws IOException
      import Number data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, BitSet values, boolean mmFlag) throws IOException
      Import boolean (BitSet) data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, boolean[] values, boolean mmFlag) throws IOException
      Import boolean data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, byte[] values, boolean mmFlag) throws IOException
      Import byte data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, short[] values, boolean mmFlag) throws IOException
      import short data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, int[] values, boolean mmFlag) throws IOException
      import integer data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, long[] values, boolean mmFlag) throws IOException
      import long data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, float[] values, boolean mmFlag) throws IOException
      import float data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importData

      public final void importData(int start, double[] values, boolean mmFlag) throws IOException
      import double data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importDComplexData

      public final void importDComplexData(int start, double[] valuesR, double[] valuesI, boolean mmFlag, boolean logMagDisplay) throws IOException
      import Complex data (in 2 double units) into data array.
      Parameters:
      start - indicates starting position in data array
      valuesR - array where real data is to be acquired
      valuesI - array where imaginary data is to be acquired
      mmFlag - whether or not to calculate min and max magnitude values for the image
      logMagDisplay - whether or not min and max are calculated for log10 of 1 + magnitude array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importRGBData

      public final void importRGBData(int color, int alphaIndexStart, byte[] values, boolean mmFlag) throws IOException
      Import byte data into data array.
      Parameters:
      color - color planes are interleaved, so color offsets the appropriate interleave interval
      alphaIndexStart - indicates starting position in data array which points to the alpha value
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importRGBData

      public final void importRGBData(int color, int alphaIndexStart, short[] values, boolean mmFlag) throws IOException
      Import byte data into data array.
      Parameters:
      color - color planes are interleaved, so color offsets the appropriate interleave interval
      alphaIndexStart - indicates starting position in data array which points to the alpha value
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importRGBData

      public final void importRGBData(int color, int alphaIndexStart, float[] values, boolean mmFlag) throws IOException
      import float data into data array.
      Parameters:
      color - color planes are interleaved, so color offsets the appropriate interleave interval
      alphaIndexStart - indicates starting position in data array which points to the alpha value
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importUData

      public final void importUData(int start, short[] values, boolean mmFlag) throws IOException
      import short data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importUData

      public final void importUData(int start, int[] values, boolean mmFlag) throws IOException
      import int data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • importUData

      public final void importUData(int start, long[] values, boolean mmFlag) throws IOException
      import int data into data array.
      Parameters:
      start - indicates starting position in data array
      values - array where data is to be acquired
      mmFlag - whether or not to calculate min and max values for the image array
      Throws:
      IOException - Throws an error when there is a locking or bounds error.
    • reallocate

      public void reallocate(int type) throws IOException
      Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
      Parameters:
      type - type of new buffer
      Throws:
      IOException - throws an exception if the image model is locked.
    • reallocate

      public void reallocate(int[] dimExtents) throws IOException
      Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
      Parameters:
      dimExtents - extents of the buffer in each dimension (multipleid together produces the size of the buffer to be allocated
      Throws:
      IOException - throws an exception if the image model is locked.
    • reallocate

      public void reallocate(int type, int[] dimExtents) throws IOException
      Disposes of old data and constructs a new buffer of the user specific type if the image in NOT locked.
      Parameters:
      type - type of new buffer
      dimExtents - extents of the buffer in each dimension (multiplied together produces the size of the buffer to be allocated
      Throws:
      IOException - throws an exception if the image model is locked.
    • recomputeDataSize

      public void recomputeDataSize()
      Recomputes the datasize based on the type of buffer. If the datasize has changed, then the data array needs to be reallocated. So this method will also reconstruct the data array in this case. This method must be called if the extents of an buffer have been changed.

      WARNING: This will clear any existing data if the dataSize is changed.

    • releaseLock

      public final void releaseLock()
      Releases the lock so that other proceses can read or write the data.
    • removeSurfaceMask

      public void removeSurfaceMask(int index)
      Removes the surface mask from this image.
      Parameters:
      index - The index of the mask to remove.
    • removeSurfaceMasks

      public BitSet[] removeSurfaceMasks()
      Returns the array of BitSet masks for backup.
      Returns:
      the BitSet mask array.
    • restoreSurfaceMasks

      public void restoreSurfaceMasks(BitSet[] masks)
      Restores the mask list from the array.
      Parameters:
      masks - array of BitSet masks
    • set

      public final boolean set(int position, Number value)
      Set that does perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - The value to stored in the data array.
      Returns:
      returns value if position in data array range
    • set

      public final boolean set(int[] position, Number value)
      nD set data fuction where bounds checking is performed.
      Parameters:
      position - The coordinate into the 1D data array
      value - The value to stored in the data array.
      Returns:
      returns true if position in data array range
    • set

      public final void set(int position, boolean value)
      version of set that does NOT perform bounds checking
      Parameters:
      position - position in one dimensional array.
      value - The value to stored in the data array.
      position - The index into the data array.
    • set

      public final void set(int[] position, boolean value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - The value to stored in the data array.
    • set

      public final void set(int position, byte value)
      Version of set that does NOT perform bounds checking.
      Parameters:
      position - The position in one dimensional array
      value - The value to stored in the data array.
    • set

      public final void set(int[] position, byte value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final void set(int[] position, short value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final void set(int position, int value)
      Version of set that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - The value to stored in the data array.
    • set

      public final void set(int[] position, int value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final void set(int position, long value)
      version of set that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - The value to stored in the data array.
    • set

      public final void set(int[] position, long value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final void set(int position, float value)
      version of set that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - data that will be stored in the data array
    • set

      public final void set(int[] position, float value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final void set(int position, double value)
      version of set that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - The value to stored in the data array.
    • set

      public final void set(int[] position, double value)
      nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • set

      public final boolean set(int x, int y, Number value)
      2D get data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - set data array to this value
      Returns:
      returns true if position in data array range
    • set

      public final void set(int x, int y, boolean value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, byte value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, long value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, float value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, double value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - The value to stored in the data array.
    • set

      public final boolean set(int x, int y, int z, Number value)
      3D set data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - set data array to this value
      Returns:
      returns true if position in data array range
    • set

      public final void set(int x, int y, int z, boolean value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, byte value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, short value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, int value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, long value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, float value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final void set(int x, int y, int z, double value)
      3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - The value to stored in the data array.
    • set

      public final boolean set(int x, int y, int z, int b, Number value)
      4D get data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate (ie. multi modality images or time)
      value - The value to stored in the data array.
      Returns:
      returns true if position in data array range
    • set

      public final void set(int x, int y, int z, int b, boolean value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, byte value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, short value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, int value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, long value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, float value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • set

      public final void set(int x, int y, int z, int b, double value)
      4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - set data array to this value
    • setAll

      public final void setAll(float value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - float data that will be stored in the data array
    • setAll

      public final void setAll(byte value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - byte data that will be stored in the data array
    • setAll

      public final void setAll(short value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - short data that will be stored in the data array
    • setAll

      public final void setAll(int value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - int data that will be stored in the data array
    • setAll

      public final void setAll(double value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - double data that will be stored in the data array
    • setAllUByte

      public final void setAllUByte(short value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - UByte data that will be stored in the data array
    • setAllUShort

      public final void setAllUShort(int value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      value - UShort data that will be stored in the data array
    • setC

      public final boolean setC(int position, int color, Number value)
      Sets the entire buffer to value passed to this method.
      Parameters:
      position - position in one dimensional array
      color - The color channel to be modified
      value - set data array to this value
      Returns:
      returns value if position in data array range
    • setC

      public final void setC(int position, int c, float value)
      color version of setC that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      c - The color channel to be modified
      value - set data array to this value
    • setC

      public final void setC(int x, int y, int c, float value)
      2D fast color version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      c - The color channel to be modified
      value - set data array to this value
    • setC

      public final boolean setC(int x, int y, int z, int c, Number value)
      3D color set data fuction where bounds checking is performed.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      c - A,R,G, or B
      value - set data array to this value
      Returns:
      returns true if position in data array range
    • setC

      public final void setC(int x, int y, int z, int c, float value)
      3D fast color version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      c - The color channel to be modified
      value - set data array to this value
    • setComplex

      public final void setComplex(int x, int y, int z, int part, float value)
      Parameters:
      x -
      y -
      z -
      part - 0 for real 1 for imaginary
      value -
    • setConvolve

      public void setConvolve(boolean bConvolve)
      Accessor method for the m_bConvolve data memeber.
      Parameters:
      bConvolve - true when this images is the product of fft( imageA ) fft( imageB )
    • setExtents

      public void setExtents(int[] dims)
      Sets the dimExtents for this structure.
      Parameters:
      dims - The data's dimensionality.
    • setFileInfo

      public void setFileInfo(FileInfoBase[] fInfo)
      Accessor that sets the entire fileInfo array of the image.
      Parameters:
      fInfo - structure
    • setFileInfo

      public void setFileInfo(FileInfoBase fInfo, int idx)
      Accessor that sets the fileInfo class for the image.
      Parameters:
      fInfo - fileInfo structure.
      idx - index that typically indicates image slice.
    • setFilterType

      public void setFilterType(int _filterType)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _filterType - int
    • setFreq1

      public void setFreq1(float _freq1)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _freq1 - float
    • setFreq2

      public void setFreq2(float _freq2)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _freq2 - float
    • setFreqU

      public void setFreqU(float _freqU)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _freqU - float
    • setFreqV

      public void setFreqV(float _freqV)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _freqV - float
    • setHaveWindowed

      public void setHaveWindowed(boolean window)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      window - boolean
    • setImage25D

      public void setImage25D(boolean _image25D)
      Accessor that sets the boolean telling if 3D images are processed one slice at a time.
      Parameters:
      _image25D - Set true if images are processed one slice at a time.
    • setLock

      public void setLock() throws IOException
      Sets the lockFlag to protect data. When the flag is set no other processes can read or write the data
      Throws:
      IOException - Throws an error if image is already locked.
    • setLock

      public final void setLock(int lockType) throws IOException
      Sets the lockFlag to protect data. When the flag is set no other processes can read or write the data
      Parameters:
      lockType - The type of read/write lock that is to be set.
      Throws:
      IOException - Throws an error if image is already locked.
    • setLogMagDisplay

      public void setLogMagDisplay(boolean logMagDisplay)
      Accessor that sets the boolean telling if log magnitude display is used in a complex image. TO BE MOVED
      Parameters:
      logMagDisplay - DOCUMENT ME!
    • setMax

      public void setMax(double _max)
      Accessor that sets the maximum value in the dataArray.
      Parameters:
      _max - Indicates the maximum value in the data array
    • setMin

      public void setMin(double _min)
      Accessor that sets the minimum value in the dataArray.
      Parameters:
      _min - Indicates the minimum value in the data array
    • setMaxR

      public void setMaxR(double _max)
      Accessor that sets the maximum value in the dataArray.
      Parameters:
      _max - Indicates the maximum value in the data array
    • setMinR

      public void setMinR(double _min)
      Accessor that sets the minimum value in the dataArray.
      Parameters:
      _min - Indicates the minimum value in the data array
    • setMaxG

      public void setMaxG(double _max)
      Accessor that sets the maximum value in the dataArray.
      Parameters:
      _max - Indicates the maximum value in the data array
    • setMinG

      public void setMinG(double _min)
      Accessor that sets the minimum value in the dataArray.
      Parameters:
      _min - Indicates the minimum value in the data array
    • setMaxB

      public void setMaxB(double _max)
      Accessor that sets the maximum value in the dataArray.
      Parameters:
      _max - Indicates the maximum value in the data array
    • setMinB

      public void setMinB(double _min)
      Accessor that sets the minimum value in the dataArray.
      Parameters:
      _min - Indicates the minimum value in the data array
    • setOriginalFilterOrder

      public void setOriginalFilterOrder(int filterOrder)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      filterOrder - DOCUMENT ME!
    • setOriginalEpsilon

      public void setOriginalEpsilon(double epsilon)
      Parameters:
      epsilon - maximum filter ripple in Chebyshev I and II or maximum passband ripple in decibels in Elliptic
    • setOriginalRs

      public void setOriginalRs(double rs)
    • setOriginalCropCheckbox

      public void setOriginalCropCheckbox(boolean cropCheckbox)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      cropCheckbox - boolean
    • setOriginalDoCrop

      public void setOriginalDoCrop(boolean doCrop)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      doCrop - boolean
    • setOriginalEnd

      public void setOriginalEnd(int[] end)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      end - int[]
    • setOriginalExtents

      public void setOriginalExtents(int[] dims)
      Sets original dimensionality of the images. TO BE MOVED
      Parameters:
      dims - int[] dimensionality for x,y, and z ... dimensions
    • setOriginalFilterConstruction

      public void setOriginalFilterConstruction(int filterConstruction)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      filterConstruction - DOCUMENT ME!
    • setOriginalKernelDimension

      public void setOriginalKernelDimension(int kDim)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      kDim - DOCUMENT ME!
    • setOriginalStart

      public void setOriginalStart(int[] start)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      start - int[]
    • setRadiologicalView

      public void setRadiologicalView(boolean bEnabled)
      Sets the radiological view flag.
      Parameters:
      bEnabled - when true the radiological view is displayed, when false the neurological view is displayed.
    • setResolutions

      public void setResolutions(int index, float[] resolutions)
      Sets the resolutions to the specific value for a specific slice indicated by the index parameter.
      Parameters:
      index - index that typically indicates image slice.
      resolutions - the image's voxel resolutions
    • setResolutions

      public void setResolutions(float[] resolutions)
      Sets the resolutions to the specific value for a specific slice indicated by the index parameter.
      Parameters:
      resolutions - the image's voxel resolutions
    • setShort

      public final void setShort(int position, short value)
      Sets the image voxel at the specified position to the specified value.
      Parameters:
      position - position in one dimensional array.
      value - the new voxel value.
    • setShort

      public final void setShort(int x, int y, short value)
      2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - the new voxel value.
    • setSigmaU

      public void setSigmaU(float _sigmaU)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _sigmaU - float
    • setSigmaV

      public void setSigmaV(float _sigmaV)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _sigmaV - float
    • setTheta

      public void setTheta(float _theta)
      DOCUMENT ME! TO BE MOVED
      Parameters:
      _theta - float
    • setType

      public final void setType(int type)
      Sets the type of data.
      Parameters:
      type - the type of data
    • setType

      public final void setType(ModelStorageBase.DataType type)
      Sets the type of data.
      Parameters:
      type - the type of data
    • setUByte

      public final void setUByte(int position, short value)
      Sets the image voxel at the specified position to the specified value.
      Parameters:
      position - position in one dimensional array
      value - the new voxel value.
    • setUByte

      public final void setUByte(int[] position, short value)
      Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • setUByte

      public final void setUByte(int x, int y, short value)
      Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - the new voxel value.
    • setUByte

      public final void setUByte(int x, int y, int z, short value)
      Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - the new voxel value.
    • setUByte

      public final void setUByte(int x, int y, int z, int b, short value)
      Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - the new voxel value.
    • setUInt

      public final void setUInt(int position, long value)
      Sets the image voxel at the specified position to the specified value. version of set that does NOT perform bounds checking.
      Parameters:
      position - position in one dimensional array
      value - the new voxel value.
    • setUInt

      public final void setUInt(int[] position, long value)
      Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • setUInt

      public final void setUInt(int x, int y, long value)
      Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - the new voxel value.
    • setUInt

      public final void setUInt(int x, int y, int z, long value)
      Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - the new voxel value.
    • setUInt

      public final void setUInt(int x, int y, int z, int t, long value)
      Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      t - t coordinate
      value - the new voxel value.
    • setUnequalDim

      public void setUnequalDim(boolean unequalDimension)
      Accessor that sets the boolean telling if unequal dimesnions are allowed in a complex image. TO BE MOVED
      Parameters:
      unequalDimension - DOCUMENT ME!
    • setUShort

      public final void setUShort(int position, int value)
      Sets the image voxel at the specified position to the specified value.
      Parameters:
      position - position in one dimensional array
      value - The value to stored in the data array.
    • setUShort

      public final void setUShort(int[] position, int value)
      Sets the image voxel at the specified position to the specified value. nD set data fuction where bounds checking is NOT performed.
      Parameters:
      position - array of coordinate values
      value - data that will be stored in the data array
    • setUShort

      public final void setUShort(int x, int y, int value)
      Sets the image voxel at the specified position to the specified value. 2D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      value - the new voxel value.
    • setUShort

      public final void setUShort(int x, int y, int z, int value)
      Sets the image voxel at the specified position to the specified value. 3D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      value - the new voxel value.
    • setUShort

      public final void setUShort(int x, int y, int z, int b, int value)
      Sets the image voxel at the specified position to the specified value. 4D fast version of set that does NOT perform bounds checking.
      Parameters:
      x - x coordinate
      y - y coordinate
      z - z coordinate
      b - b coordinate
      value - the new voxel value.
    • allocateData

      protected void allocateData()
      Allocates data based on the data type and dataSize. Since this can be used to reallocate data, first set the data to null and do some garbage collecting.
    • getTypeMin

      public static double getTypeMin(int type)
      his method return the min value allowed of the type
      Parameters:
      type -
      Returns:
    • getTypeMax

      public static double getTypeMax(int type)
      This method return the max value allowed of the type
      Parameters:
      type -
      Returns:
    • calcAvgIntenStdDev

      public void calcAvgIntenStdDev()
      computes the avg intensity got 2d and 3d greyscale and color images
    • getStdDeviation

      public float getStdDeviation()
    • getAvgInten

      public float getAvgInten()
    • getNumPixels

      public int getNumPixels()
    • getSumPixelInten

      public double getSumPixelInten()
    • getAvgIntenB

      public float getAvgIntenB()
    • getAvgIntenG

      public float getAvgIntenG()
    • getAvgIntenR

      public float getAvgIntenR()
    • getStdDeviationB

      public float getStdDeviationB()
    • getStdDeviationG

      public float getStdDeviationG()
    • getStdDeviationR

      public float getStdDeviationR()
    • getSumPixelIntenB

      public double getSumPixelIntenB()
    • getSumPixelIntenG

      public double getSumPixelIntenG()
    • getSumPixelIntenR

      public double getSumPixelIntenR()
    • computeDataSize

      protected void computeDataSize()
      Computes the datasize based on the type of buffer.
    • construct

      protected void construct(ModelStorageBase.DataType type, int[] dimExtents)
      Allocates buffer memory of the specified type.
      Parameters:
      type - type of buffer to allocate
      dimExtents - extents of the buffer in each dimension (multiplied together produces the size of the buffer to be allocated
    • finalize

      protected void finalize() throws Throwable
      Calls disposeLocal of this class to ensure this class nulls the references to global class variables so that memory will be recovered.
      Overrides:
      finalize in class Object
      Throws:
      Throwable - Throws an error if the finalization failed.
    • getDataSize

      public int getDataSize()
      Get total buffer length.