package edu.mbl.jif.imaging.meta; import java.util.Date; import java.awt.Rectangle; /** * <p>Title: JifImageMetadata </p> * // Speculative.... GBH: Adapted from OME... * <p>Description: </p> * * <p>Copyright: Copyright (c) 2004</p> * * <p>Company: MBL </p> * * @author not attributable * @version 1.0 */ public class JifImageMetadata { // ID public String polStackID = "0000"; // Project / Session (original) public String project; public String session; // Acquisition // Camera settings public long width; public long height; public long binning; public long depth; public long exposure; public long gain; public long offset; public Rectangle roi; // Multi-frame integration or averaging public int frames = 1; public int averaging = 1; // Series acq. public int NthInSeries = 0; public int inSeriesOf = 0; // Z // Other Date dateAcquired = new Date(); public long timeAcquired = 0; public long timeToAcquire = 0; // Averaging (old, 4:1 type, no longer used) public boolean averaged = false; // VariLC settings public float[] retarderA = { 0, 0, 0, 0, 0 }; public float[] retarderB = { 0, 0, 0, 0, 0 }; // PolStack parameters public float retardanceMax = 0; // Maximum,regardless of retCeiling. public float swingFraction = 0.03f; // =swing/wavelength ~ 0.03 public float wavelength = 546f; // wavelength in nm ~ 546 nm public float zeroIntensity = 0.0f; public int retCeiling = 10; // maximum image retardance in nm // public int algorithm = PSj.CALC_FOUR; public int azimuthRef = 0; // azimuth reference in (whole) degrees public float dynamicRange = 1.0f; // dynamic range of ... // Background correction - filename of stack used for correction in magImage public String bkgdStackFile = null; public String bkgdStackMD5 = null; public boolean doBkgdCorrection = false; public String bkgdCorrectionMethod = null; // ["PolStack" | "subtract"]; // Ratioing Correction public Rectangle ratioingRoi = new Rectangle(0, 0, 0, 0); public double[] ratioingAvg = null; // for each slice public boolean doRatioing = false; // ??? Mirror ?? // / / / / / / / / From O M E / / / / / / / / // -- Constants -- public static final String ID = "ID"; //Experiment public static final String EXPERIMENT = "Experiment"; public static final String EXPERIMENT_TYPE = "Type"; public static final String EXPERIMENT_DESCRIPTION = "Description"; public static final String EXPERIMENT_EXPERIMENTER = "Experimenter"; //Experimenter public static final String EXPERIMENTER = "Experimenter"; public static final String EXPERIMENTER_FIRST_NAME = "FirstName"; public static final String EXPERIMENTER_LAST_NAME = "LastName"; public static final String EXPERIMENTER_EMAIL = "Email"; public static final String EXPERIMENTER_OME_NAME = "OMEName"; //ExperimenterGroup public static final String EXPERIMENTER_GROUP = "ExperimenterGroup"; public static final String EXPERIMENTER_GROUP_EXPERIMENTER = "Experimenter"; public static final String EXPERIMENTER_GROUP_GROUP = "Group"; //Detector public static final String DETECTOR = "Detector"; public static final String DETECTOR_MANUFACTURER = "Manufacturer"; public static final String DETECTOR_MODEL = "Model"; public static final String DETECTOR_SERIAL_NUMBER = "SerialNumber"; public static final String DETECTOR_TYPE = "Type"; public static final String DETECTOR_INSTRUMENT = "Instrument"; //Dimensions public static final String DIMENSIONS = "Dimensions"; public static final String DIMENSIONS_PIXEL_SIZE_X = "PixelSizeX"; public static final String DIMENSIONS_PIXEL_SIZE_Y = "PixelSizeY"; public static final String DIMENSIONS_PIXEL_SIZE_Z = "PixelSizeZ"; public static final String DIMENSIONS_PIXEL_SIZE_C = "PixelSizeC"; public static final String DIMENSIONS_PIXEL_SIZE_T = "PixelSizeT"; //DisplayChannel public static final String DISPLAY_CHANNEL = "DisplayChannel"; public static final String DISPLAY_CHANNEL_CHANNEL_NUMBER = "ChannelNumber"; public static final String DISPLAY_CHANNEL_BLACK_LEVEL = "BlackLevel"; public static final String DISPLAY_CHANNEL_WHITE_LEVEL = "WhiteLevel"; public static final String DISPLAY_CHANNEL_GAMMA = "Gamma"; //DisplayOptions public static final String DISPLAY_OPTIONS = "DisplayOptions"; public static final String DISPLAY_OPTIONS_ZOOM = "Zoom"; public static final String DISPLAY_OPTIONS_Z_START = "ZStart"; public static final String DISPLAY_OPTIONS_Z_STOP = "ZStop"; public static final String DISPLAY_OPTIONS_T_START = "TStart"; public static final String DISPLAY_OPTIONS_T_STOP = "TStop"; public static final String DISPLAY_OPTIONS_RED_CHANNEL = "RedChannel"; public static final String DISPLAY_OPTIONS_GREEN_CHANNEL = "GreenChannel"; public static final String DISPLAY_OPTIONS_BLUE_CHANNEL = "BlueChannel"; //DisplayROI public static final String DISPLAY_ROI = "DisplayROI"; public static final String DISPLAY_ROI_X0 = "X0"; public static final String DISPLAY_ROI_Y0 = "Y0"; public static final String DISPLAY_ROI_Z0 = "Z0"; public static final String DISPLAY_ROI_X1 = "X1"; public static final String DISPLAY_ROI_Y1 = "Y1"; public static final String DISPLAY_ROI_Z1 = "Z1"; public static final String DISPLAY_ROI_T0 = "T0"; public static final String DISPLAY_ROI_T1 = "T1"; public static final String DISPLAY_ROI_DISPLAY_OPTIONS = "DisplayOptions"; //Filter public static final String FILTER = "Filter"; public static final String FILTER_INSTRUMENT = "Instrument"; //FilterSet public static final String FILTER_SET = "FilterSet"; public static final String FILTER_SET_MANUFACTURER = "Manufacturer"; public static final String FILTER_SET_MODEL = "Model"; public static final String FILTER_SET_LOT_NUMBER = "LotNumber"; public static final String FILTER_SET_FILTER = "Filter"; //Group public static final String GROUP = "Group"; public static final String GROUP_NAME = "Name"; public static final String GROUP_LEADER = "Leader"; public static final String GROUP_CONTACT = "Contact"; //ImageExperiment public static final String IMAGE_EXPERIMENT = "ImageExperiment"; public static final String IMAGE_EXPERIMENT_EXPERIMENT = "Experiment"; //ImageInstrument public static final String IMAGE_INSTRUMENT = "ImageInstrument"; public static final String IMAGE_INSTRUMENT_INSTRUMENT = "Instrument"; //ImagePlate public static final String IMAGE_PLATE = "ImagePlate"; public static final String IMAGE_PLATE_WELL = "Well"; public static final String IMAGE_PLATE_PLATE = "Plate"; public static final String IMAGE_PLATE_SAMPLE = "Sample"; //ImagingEnvironment public static final String IMAGING_ENVIRONMENT = "ImagingEnvironment"; public static final String IMAGING_ENVIRONMENT_TEMPERATURE = "Temperature"; public static final String IMAGING_ENVIRONMENT_AIR_PRESSURE = "AirPressure"; public static final String IMAGING_ENVIRONMENT_HUMIDITY = "Humidity"; public static final String IMAGING_ENVIRONMENT_CO2_PERCENT = "CO2Percent"; //Instrument public static final String INSTRUMENT = "Instrument"; public static final String INSTRUMENT_MANUFACTURER = "Manufacturer"; public static final String INSTRUMENT_MODEL = "Model"; public static final String INSTRUMENT_SERIAL_NUMBER = "SerialNumber"; public static final String INSTRUMENT_TYPE = "Type"; //LightSource public static final String LIGHT_SOURCE = "LightSource"; public static final String LIGHT_SOURCE_MANUFACTURER = "Manufacturer"; public static final String LIGHT_SOURCE_MODEL = "Model"; public static final String LIGHT_SOURCE_SERIAL_NUMBER = "SerialNumber"; public static final String LIGHT_SOURCE_INSTRUMENT = "Instrument"; //LogicalChannel public static final String LOGICAL_CHANNEL = "LogicalChannel"; public static final String LOGICAL_CHANNEL_NAME = "Name"; public static final String LOGICAL_CHANNEL_ILLUMINATION_TYPE = "IlluminationType"; public static final String LOGICAL_CHANNEL_AUX_TECHNIQUE = "AuxTechnique"; public static final String LOGICAL_CHANNEL_EX_WAVE = "ExWave"; public static final String LOGICAL_CHANNEL_EM_WAVE = "EmWave"; public static final String LOGICAL_CHANNEL_FLOUR = "Flour"; public static final String LOGICAL_CHANNEL_ND_FILTER = "NDfilter"; public static final String LOGICAL_CHANNEL_LIGHT_SOURCE = "LightSource"; public static final String LOGICAL_CHANNEL_AUX_LIGHT_SOURCE = "AuxLightSource"; public static final String LOGICAL_CHANNEL_DETECTOR = "Detector"; public static final String LOGICAL_CHANNEL_OTF = "OTF"; public static final String LOGICAL_CHANNEL_FILTER = "Filter"; //Objective public static final String OBJECTIVE = "Objective"; public static final String OBJECTIVE_MANUFACTURER = "Manufacturer"; public static final String OBJECTIVE_MODEL = "Model"; public static final String OBJECTIVE_SERIAL_NUMBER = "SerialNumber"; public static final String OBJECTIVE_LENS_NA = "LensNA"; public static final String OBJECTIVE_MAGNIFICATION = "Magnification"; public static final String OBJECTIVE_INSTRUMENT = "Instrument"; //OpticalTransferFunction public static final String OPTICAL_TRANSFER_FUNCTION = "OpticalTransferFunction"; public static final String OPTICAL_TRANSFER_FUNCTION_SIZE_X = "SizeX"; public static final String OPTICAL_TRANSFER_FUNCTION_SIZE_Y = "SizeY"; public static final String OPTICAL_TRANSFER_FUNCTION_PIXEL_TYPE = "PixelType"; public static final String OPTICAL_TRANSFER_FUNCTION_OPTICAL_AXIS_AVERAGE = "OpticalAxisAverage"; public static final String OPTICAL_TRANSFER_FUNCTION_INSTRUMENT = "Instrument"; public static final String OPTICAL_TRANSFER_FUNCTION_OBJECTIVE = "Objective"; public static final String OPTICAL_TRANSFER_FUNCTION_FILTER = "Filter"; //PixelChannelComponent public static final String PIXEL_CHANNEL_COMPONENT = "PixelChannelComponent"; public static final String PIXEL_CHANNEL_COMPONENT_PIXELS = "Pixels"; public static final String PIXEL_CHANNEL_COMPONENT_INDEX = "Index"; public static final String PIXEL_CHANNEL_COMPONENT_COLOR_DOMAIN = "ColorDomain"; public static final String PIXEL_CHANNEL_COMPONENT_LOGICAL_CHANNEL = "LogicalChannel"; //Plate public static final String PLATE = "Plate"; public static final String PLATE_NAME = "Name"; public static final String PLATE_EXTERNAL_REFERENCE = "ExternalReference"; //PlateScreen public static final String PLATE_SCREEN = "PlateScreen"; public static final String PLATE_SCREEN_PLATE = "PlateScreenPlate"; public static final String PLATE_SCREEN_SCREEN = "PlateScreenScreen"; //Screen public static final String SCREEN = "Screen"; public static final String SCREEN_NAME = "Name"; public static final String SCREEN_EXTERNAL_REFERENCE = "ExternalReference"; //StageLabel public static final String STAGE_LABEL = "StageLabel"; public static final String STAGE_LABEL_NAME = "Name"; public static final String STAGE_LABEL_X = "X"; public static final String STAGE_LABEL_Y = "Y"; public static final String STAGE_LABEL_Z = "Z"; public JifImageMetadata () { } }