Changeset 6148


Ignore:
Timestamp:
04/20/10 11:59:14 (10 years ago)
Author:
melissa
Message:

Updated the remainder of the SXM readers to respect MetadataOptions.

Location:
trunk/components/bio-formats/src/loci/formats/in
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/components/bio-formats/src/loci/formats/in/LEOReader.java

    r6129 r6148  
    8484    String[] lines = tag.split("\n"); 
    8585 
    86     // physical sizes stored in meters 
    87     xSize = Double.parseDouble(lines[3]) * 1000000; 
    88  
    89     double eht = Double.parseDouble(lines[6]); 
    90     double filament = Double.parseDouble(lines[7]); 
    91     workingDistance = Double.parseDouble(lines[9]); 
    92  
    9386    date = ""; 
    9487 
     
    10295    } 
    10396 
    104     addGlobalMeta("Acquisition date", date); 
    105     addGlobalMeta("EHT", eht); 
    106     addGlobalMeta("Filament", filament); 
    107     addGlobalMeta("Working Distance", workingDistance); 
    108     addGlobalMeta("Physical pixel size", xSize + " um"); 
     97    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     98      // physical sizes stored in meters 
     99      xSize = Double.parseDouble(lines[3]) * 1000000; 
     100 
     101      double eht = Double.parseDouble(lines[6]); 
     102      double filament = Double.parseDouble(lines[7]); 
     103      workingDistance = Double.parseDouble(lines[9]); 
     104      addGlobalMeta("EHT", eht); 
     105      addGlobalMeta("Filament", filament); 
     106      addGlobalMeta("Working Distance", workingDistance); 
     107      addGlobalMeta("Physical pixel size", xSize + " um"); 
     108      addGlobalMeta("Acquisition date", date); 
     109    } 
    109110  } 
    110111 
     
    116117      new FilterMetadata(getMetadataStore(), isMetadataFiltered()); 
    117118 
    118     store.setDimensionsPhysicalSizeX(xSize, 0, 0); 
    119     store.setDimensionsPhysicalSizeY(xSize, 0, 0); 
    120  
    121     store.setObjectiveWorkingDistance(workingDistance, 0, 0); 
    122  
    123119    date = DateTools.formatDate(date, "HH:mm dd-MMM-yyyy"); 
    124120    store.setImageCreationDate(date, 0); 
     121 
     122    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     123      store.setDimensionsPhysicalSizeX(xSize, 0, 0); 
     124      store.setDimensionsPhysicalSizeY(xSize, 0, 0); 
     125      store.setObjectiveWorkingDistance(workingDistance, 0, 0); 
     126    } 
    125127  } 
    126128 
  • trunk/components/bio-formats/src/loci/formats/in/LIMReader.java

    r6118 r6148  
    4343public class LIMReader extends FormatReader { 
    4444 
     45  // -- Constants -- 
     46 
     47  private static final int PIXELS_OFFSET = 0x94b; 
     48 
    4549  // -- Fields -- 
    4650 
     
    6569    FormatTools.checkPlaneParameters(this, no, buf.length, x, y, w, h); 
    6670 
    67     in.seek(0x94b); 
     71    in.seek(PIXELS_OFFSET); 
    6872    readPlane(in, x, y, w, h, buf); 
    6973 
     
    108112 
    109113    isCompressed = in.readShort() != 0; 
     114    addGlobalMeta("Is compressed", isCompressed); 
    110115    if (isCompressed) { 
    111116      throw new FormatException("Compressed LIM files not supported."); 
  • trunk/components/bio-formats/src/loci/formats/in/OxfordInstrumentsReader.java

    r6055 r6148  
    8080    in.seek(headerSize); 
    8181    readPlane(in, x, y, w, h, buf); 
    82  
    8382    return buf; 
    8483  } 
     
    9796    String comment = in.readString(32); 
    9897 
    99     StringBuffer dateTime = new StringBuffer(); 
    100     dateTime.append(String.valueOf(in.readInt())); // year 
    101     dateTime.append("-"); 
    102     int month = in.readInt(); 
    103     dateTime.append(String.format("%02d", month)); 
    104     dateTime.append("-"); 
    105     int day = in.readInt(); 
    106     dateTime.append(String.format("%02d", day)); 
    107     dateTime.append("T"); 
    108     int hour = in.readInt(); 
    109     dateTime.append(String.format("%02d", hour)); 
    110     dateTime.append(":"); 
    111     int minute = in.readInt(); 
    112     dateTime.append(String.format("%02d", minute)); 
    113     dateTime.append(":"); 
    114     in.skipBytes(4); 
    115  
    116     float scanTime = in.readInt() / 100f; 
    117     dateTime.append(String.valueOf((int) scanTime)); 
     98    String dateTime = readDate(); 
    11899 
    119100    in.skipBytes(8); 
     
    154135    in.skipBytes(lutSize); 
    155136    headerSize = in.getFilePointer(); 
    156     in.skipBytes(FormatTools.getPlaneSize(this)); 
    157137 
    158     int nMetadataStrings = in.readInt(); 
    159     for (int i=0; i<nMetadataStrings; i++) { 
    160       int length = in.readInt(); 
    161       String s = in.readString(length); 
    162       if (s.indexOf(":") != -1) { 
    163         String key = s.substring(0, s.indexOf(":")).trim(); 
    164         String value = s.substring(s.indexOf(":") + 1).trim(); 
    165         if (!value.equals("-")) { 
    166           addGlobalMeta(key, value); 
     138    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     139      in.skipBytes(FormatTools.getPlaneSize(this)); 
     140 
     141      int nMetadataStrings = in.readInt(); 
     142      for (int i=0; i<nMetadataStrings; i++) { 
     143        int length = in.readInt(); 
     144        String s = in.readString(length); 
     145        if (s.indexOf(":") != -1) { 
     146          String key = s.substring(0, s.indexOf(":")).trim(); 
     147          String value = s.substring(s.indexOf(":") + 1).trim(); 
     148          if (!value.equals("-")) { 
     149            addGlobalMeta(key, value); 
     150          } 
    167151        } 
    168152      } 
     153 
     154      addGlobalMeta("Description", comment); 
     155      addGlobalMeta("Acquisition date", dateTime); 
     156      addGlobalMeta("X size (um)", xSize); 
     157      addGlobalMeta("Y size (um)", ySize); 
     158      addGlobalMeta("Z minimum (um)", zMin); 
     159      addGlobalMeta("Z maximum (um)", zMax); 
    169160    } 
    170  
    171     addGlobalMeta("Description", comment); 
    172     addGlobalMeta("Acquisition date", dateTime.toString()); 
    173     addGlobalMeta("Scan time (s)", scanTime); 
    174     addGlobalMeta("X size (um)", xSize); 
    175     addGlobalMeta("Y size (um)", ySize); 
    176     addGlobalMeta("Z minimum (um)", zMin); 
    177     addGlobalMeta("Z maximum (um)", zMax); 
    178161 
    179162    MetadataStore store = 
     
    182165 
    183166    store.setImageDescription(comment, 0); 
    184     store.setImageCreationDate(dateTime.toString(), 0); 
     167    store.setImageCreationDate(dateTime, 0); 
    185168    store.setDimensionsPhysicalSizeX(xSize / getSizeX(), 0, 0); 
    186169    store.setDimensionsPhysicalSizeY(ySize / getSizeY(), 0, 0); 
    187170  } 
    188171 
     172  // -- Helper methods -- 
     173 
     174  private String readDate() throws IOException { 
     175    StringBuffer dateTime = new StringBuffer(); 
     176    dateTime.append(String.valueOf(in.readInt())); // year 
     177    dateTime.append("-"); 
     178    int month = in.readInt(); 
     179    dateTime.append(String.format("%02d", month)); 
     180    dateTime.append("-"); 
     181    int day = in.readInt(); 
     182    dateTime.append(String.format("%02d", day)); 
     183    dateTime.append("T"); 
     184    int hour = in.readInt(); 
     185    dateTime.append(String.format("%02d", hour)); 
     186    dateTime.append(":"); 
     187    int minute = in.readInt(); 
     188    dateTime.append(String.format("%02d", minute)); 
     189    dateTime.append(":"); 
     190    in.skipBytes(4); 
     191 
     192    float scanTime = in.readInt() / 100f; 
     193    dateTime.append(String.valueOf((int) scanTime)); 
     194    addGlobalMeta("Scan time (s)", scanTime); 
     195    return dateTime.toString(); 
     196  } 
     197 
    189198} 
  • trunk/components/bio-formats/src/loci/formats/in/QuesantReader.java

    r6055 r6148  
    5151 
    5252  private int pixelsOffset; 
     53  private double xSize = 0d; 
     54  private String date = null, comment = null; 
    5355 
    5456  // -- Constructor -- 
     
    8082    if (!fileOnly) { 
    8183      pixelsOffset = 0; 
     84      xSize = 0d; 
     85      date = comment = null; 
    8286    } 
    8387  } 
     
    9397    in.order(isLittleEndian()); 
    9498 
    95     double xSize = 0d; 
    96     String date = null, comment = null; 
    97  
    9899    while (in.getFilePointer() < MAX_HEADER_SIZE) { 
    99       String code = in.readString(4); 
    100       int offset = in.readInt(); 
    101       long fp = in.getFilePointer(); 
    102       if (offset <= 0 || offset > in.length()) continue; 
    103  
    104       if (code.equals("SDES")) { 
    105         in.seek(offset); 
    106         String sdes = in.readCString().trim(); 
    107         if (comment == null) comment = sdes; 
    108         else comment += " " + sdes; 
    109       } 
    110       else if (code.equals("DESC")) { 
    111         in.seek(offset); 
    112         int length = in.readShort(); 
    113         String desc = in.readString(length); 
    114         if (comment == null) comment = desc; 
    115         else comment += " " + desc; 
    116       } 
    117       else if (code.equals("DATE")) { 
    118         in.seek(offset); 
    119         date = in.readCString(); 
    120       } 
    121       else if (code.equals("IMAG")) { 
    122         pixelsOffset = offset; 
    123       } 
    124       else if (code.equals("HARD")) { 
    125         in.seek(offset); 
    126         xSize = in.readFloat(); 
    127  
    128         float scanRate = in.readFloat(); 
    129         float tunnelCurrent = (in.readFloat() * 10) / 32768; 
    130  
    131         in.skipBytes(12); 
    132  
    133         float integralGain = in.readFloat(); 
    134         float proportGain = in.readFloat(); 
    135         boolean isSTM = in.readShort() == 10; 
    136         float dynamicRange = in.readFloat(); 
    137  
    138         addGlobalMeta("Scan rate (Hz)", scanRate); 
    139         addGlobalMeta("Tunnel current", tunnelCurrent); 
    140         addGlobalMeta("Is STM image", isSTM); 
    141         addGlobalMeta("Integral gain", integralGain); 
    142         addGlobalMeta("Proportional gain", proportGain); 
    143         addGlobalMeta("Z dynamic range", dynamicRange); 
    144       } 
    145       in.seek(fp); 
     100      readVariable(); 
    146101    } 
    147102 
     
    167122    } 
    168123    else MetadataTools.setDefaultCreationDate(store, id, 0); 
    169     store.setImageDescription(comment, 0); 
    170     store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
    171     store.setDimensionsPhysicalSizeY((double) xSize / getSizeY(), 0, 0); 
     124 
     125    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     126      store.setImageDescription(comment, 0); 
     127      store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
     128      store.setDimensionsPhysicalSizeY((double) xSize / getSizeY(), 0, 0); 
     129    } 
     130  } 
     131 
     132  // -- Helper methods -- 
     133 
     134  private void readVariable() throws IOException { 
     135    String code = in.readString(4); 
     136    if (getMetadataOptions().getMetadataLevel() != MetadataLevel.ALL && 
     137      !code.equals("IMAG")) 
     138    { 
     139      in.skipBytes(4); 
     140      return; 
     141    } 
     142 
     143    int offset = in.readInt(); 
     144    long fp = in.getFilePointer(); 
     145    if (offset <= 0 || offset > in.length()) return; 
     146 
     147    in.seek(offset); 
     148 
     149    if (code.equals("SDES")) { 
     150      String sdes = in.readCString().trim(); 
     151      if (comment == null) comment = sdes; 
     152      else comment += " " + sdes; 
     153    } 
     154    else if (code.equals("DESC")) { 
     155      int length = in.readShort(); 
     156      String desc = in.readString(length); 
     157      if (comment == null) comment = desc; 
     158      else comment += " " + desc; 
     159    } 
     160    else if (code.equals("DATE")) { 
     161      date = in.readCString(); 
     162    } 
     163    else if (code.equals("IMAG")) { 
     164      pixelsOffset = offset; 
     165    } 
     166    else if (code.equals("HARD")) { 
     167      xSize = in.readFloat(); 
     168 
     169      float scanRate = in.readFloat(); 
     170      float tunnelCurrent = (in.readFloat() * 10) / 32768; 
     171 
     172      in.skipBytes(12); 
     173 
     174      float integralGain = in.readFloat(); 
     175      float proportGain = in.readFloat(); 
     176      boolean isSTM = in.readShort() == 10; 
     177      float dynamicRange = in.readFloat(); 
     178 
     179      addGlobalMeta("Scan rate (Hz)", scanRate); 
     180      addGlobalMeta("Tunnel current", tunnelCurrent); 
     181      addGlobalMeta("Is STM image", isSTM); 
     182      addGlobalMeta("Integral gain", integralGain); 
     183      addGlobalMeta("Proportional gain", proportGain); 
     184      addGlobalMeta("Z dynamic range", dynamicRange); 
     185    } 
     186    in.seek(fp); 
    172187  } 
    173188 
  • trunk/components/bio-formats/src/loci/formats/in/SeikoReader.java

    r6055 r6148  
    8181    in.order(isLittleEndian()); 
    8282 
    83     in.seek(40); 
     83    String comment = null; 
     84    double xSize = 0d, ySize = 0d; 
    8485 
    85     String comment = in.readCString(); 
     86    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     87      in.seek(40); 
     88      comment = in.readCString(); 
    8689 
    87     in.seek(156); 
     90      in.seek(156); 
    8891 
    89     double xSize = in.readFloat(); 
    90     in.skipBytes(4); 
    91     double ySize = in.readFloat(); 
     92      xSize = in.readFloat(); 
     93      in.skipBytes(4); 
     94      ySize = in.readFloat(); 
    9295 
    93     in.skipBytes(1234); 
     96      addGlobalMeta("Comment", comment); 
     97    } 
     98 
     99    in.seek(1402); 
    94100 
    95101    core[0].sizeX = in.readShort(); 
     
    108114    MetadataTools.setDefaultCreationDate(store, currentId, 0); 
    109115 
    110     store.setImageDescription(comment, 0); 
    111     store.setDimensionsPhysicalSizeX(xSize, 0, 0); 
    112     store.setDimensionsPhysicalSizeY(ySize, 0, 0); 
     116    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     117      store.setImageDescription(comment, 0); 
     118      store.setDimensionsPhysicalSizeX(xSize, 0, 0); 
     119      store.setDimensionsPhysicalSizeY(ySize, 0, 0); 
     120    } 
    113121  } 
    114122 
  • trunk/components/bio-formats/src/loci/formats/in/TargaReader.java

    r6026 r6148  
    6363 
    6464  // -- IFormatReader API methods -- 
    65  
    66   /* @see loci.formats.IFormatReader#isThisType(RandomAccessInputStream) */ 
    67   public boolean isThisType(RandomAccessInputStream stream) throws IOException { 
    68     return false; 
    69   } 
    7065 
    7166  /* @see loci.formats.IFormatReader#get8BitLookupTable() */ 
     
    244239 
    245240    MetadataTools.setDefaultCreationDate(store, id, 0); 
    246     store.setImageDescription(identification, 0); 
     241    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     242      store.setImageDescription(identification, 0); 
     243    } 
    247244  } 
    248245 
  • trunk/components/bio-formats/src/loci/formats/in/TopometrixReader.java

    r6055 r6148  
    120120    in.skipBytes(2); 
    121121    core[0].sizeY = in.readShort(); 
    122     in.skipBytes(2); 
    123     in.skipBytes(8); 
    124122 
    125123    double xSize = 0d, ySize = 0d; 
    126124    double adc = 0d, dacToWorldZero = 0d; 
    127125 
    128     if (version == 5) { 
    129       in.skipBytes(4); 
    130       xSize = in.readDouble(); 
    131       in.skipBytes(8); 
    132       ySize = in.readDouble(); 
    133       adc = in.readDouble(); 
    134       dacToWorldZero = in.readDouble(); 
     126    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     127      in.skipBytes(10); 
     128      if (version == 5) { 
     129        in.skipBytes(4); 
     130        xSize = in.readDouble(); 
     131        in.skipBytes(8); 
     132        ySize = in.readDouble(); 
     133        adc = in.readDouble(); 
     134        dacToWorldZero = in.readDouble(); 
    135135 
    136       in.skipBytes(1176); 
     136        in.skipBytes(1176); 
    137137 
    138       double sampleVolts = in.readDouble(); 
    139       double tunnelCurrent = in.readDouble(); 
    140       in.skipBytes(16); 
    141       double timePerPixel = in.readDouble(); 
    142       in.skipBytes(40); 
    143       double scanAngle = in.readDouble(); 
     138        double sampleVolts = in.readDouble(); 
     139        double tunnelCurrent = in.readDouble(); 
     140        in.skipBytes(16); 
     141        double timePerPixel = in.readDouble(); 
     142        in.skipBytes(40); 
     143        double scanAngle = in.readDouble(); 
    144144 
    145       addGlobalMeta("Sample volts", sampleVolts); 
    146       addGlobalMeta("Tunnel current", tunnelCurrent); 
    147       addGlobalMeta("Scan rate", timePerPixel); 
    148       addGlobalMeta("Scan angle", scanAngle); 
     145        addGlobalMeta("Sample volts", sampleVolts); 
     146        addGlobalMeta("Tunnel current", tunnelCurrent); 
     147        addGlobalMeta("Scan rate", timePerPixel); 
     148        addGlobalMeta("Scan angle", scanAngle); 
     149      } 
     150      else { 
     151        xSize = in.readFloat(); 
     152        in.skipBytes(4); 
     153        ySize = in.readFloat(); 
     154        adc = in.readFloat(); 
     155        in.skipBytes(764); 
     156        dacToWorldZero = in.readFloat(); 
     157      } 
     158 
     159      addGlobalMeta("Version", version); 
     160      addGlobalMeta("X size (in um)", xSize); 
     161      addGlobalMeta("Y size (in um)", ySize); 
     162      addGlobalMeta("ADC", adc); 
     163      addGlobalMeta("DAC to world zero", dacToWorldZero); 
     164      addGlobalMeta("Comment", comment); 
     165      addGlobalMeta("Acquisition date", date); 
    149166    } 
    150     else { 
    151       xSize = in.readFloat(); 
    152       in.skipBytes(4); 
    153       ySize = in.readFloat(); 
    154       adc = in.readFloat(); 
    155       in.skipBytes(764); 
    156       dacToWorldZero = in.readFloat(); 
    157     } 
    158  
    159     addGlobalMeta("Version", version); 
    160     addGlobalMeta("X size (in um)", xSize); 
    161     addGlobalMeta("Y size (in um)", ySize); 
    162     addGlobalMeta("ADC", adc); 
    163     addGlobalMeta("DAC to world zero", dacToWorldZero); 
    164     addGlobalMeta("Comment", comment); 
    165     addGlobalMeta("Acquisition date", date); 
    166167 
    167168    core[0].pixelType = FormatTools.UINT16; 
     
    175176      new FilterMetadata(getMetadataStore(), isMetadataFiltered()); 
    176177    MetadataTools.populatePixels(store, this); 
    177  
    178     store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
    179     store.setDimensionsPhysicalSizeY((double) ySize / getSizeY(), 0, 0); 
    180     store.setImageDescription(comment, 0); 
    181178    store.setImageCreationDate(DateTools.formatDate(date, 
    182179      new String[] {"MM/dd/yy HH:mm:ss", "MM/dd/yyyy HH:mm:ss"}), 0); 
     180 
     181    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     182      store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
     183      store.setDimensionsPhysicalSizeY((double) ySize / getSizeY(), 0, 0); 
     184      store.setImageDescription(comment, 0); 
     185    } 
    183186  } 
    184187 
  • trunk/components/bio-formats/src/loci/formats/in/UBMReader.java

    r6026 r6148  
    6161  // -- IFormatReader API methods -- 
    6262 
    63   /* @see loci.formats.IFormatReader#isThisType(RandomAccessInputStream) */ 
    64   public boolean isThisType(RandomAccessInputStream stream) throws IOException { 
    65     //final int blockLen = 16; 
    66     //if (!FormatTools.validStream(stream, blockLen, false)) return false; 
    67     //return (stream.readString(blockLen)).indexOf(AL3D_MAGIC_STRING) >= 0; 
    68     return false; 
    69   } 
    70  
    7163  /** 
    7264   * @see loci.formats.IFormatReader#openBytes(int, byte[], int, int, int, int) 
  • trunk/components/bio-formats/src/loci/formats/in/UnisokuReader.java

    r6118 r6148  
    138138          date = DateTools.formatDate(value, "MM/dd/yy HH:mm:ss"); 
    139139        } 
    140         else if (key.equals(":sample name")) { 
    141           imageName = value; 
    142         } 
    143         else if (key.equals(":remark")) { 
    144           remark = value; 
    145         } 
    146         else if (key.startsWith(":x_data ->")) { 
    147           String unit = v[0]; 
    148           pixelSizeX = Double.parseDouble(v[2]) - Double.parseDouble(v[1]); 
    149           pixelSizeX /= getSizeX(); 
    150           if (unit.equals("nm")) { 
    151             pixelSizeX /= 1000; 
    152           } 
    153         } 
    154         else if (key.startsWith(":y_data ->")) { 
    155           String unit = v[0]; 
    156           pixelSizeY = Double.parseDouble(v[2]) - Double.parseDouble(v[1]); 
    157           pixelSizeY /= getSizeY(); 
    158           if (unit.equals("nm")) { 
    159             pixelSizeY /= 1000; 
    160           } 
    161         } 
    162140        else if (key.startsWith(":ascii flag; data type")) { 
    163141          value = value.substring(value.indexOf(" ") + 1); 
     
    167145          core[0].pixelType = 
    168146            FormatTools.pixelTypeFromBytes(bytes, signed, bytes == 4); 
     147        } 
     148        else if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     149          if (key.equals(":sample name")) { 
     150            imageName = value; 
     151          } 
     152          else if (key.equals(":remark")) { 
     153            remark = value; 
     154          } 
     155          else if (key.startsWith(":x_data ->")) { 
     156            String unit = v[0]; 
     157            pixelSizeX = Double.parseDouble(v[2]) - Double.parseDouble(v[1]); 
     158            pixelSizeX /= getSizeX(); 
     159            if (unit.equals("nm")) { 
     160              pixelSizeX /= 1000; 
     161            } 
     162          } 
     163          else if (key.startsWith(":y_data ->")) { 
     164            String unit = v[0]; 
     165            pixelSizeY = Double.parseDouble(v[2]) - Double.parseDouble(v[1]); 
     166            pixelSizeY /= getSizeY(); 
     167            if (unit.equals("nm")) { 
     168              pixelSizeY /= 1000; 
     169            } 
     170          } 
    169171        } 
    170172      } 
     
    186188 
    187189    store.setImageName(imageName, 0); 
    188     store.setImageDescription(remark, 0); 
    189190    store.setImageCreationDate(date, 0); 
    190     store.setDimensionsPhysicalSizeX(pixelSizeX, 0, 0); 
    191     store.setDimensionsPhysicalSizeY(pixelSizeY, 0, 0); 
     191 
     192    if (getMetadataOptions().getMetadataLevel() == MetadataLevel.ALL) { 
     193      store.setImageDescription(remark, 0); 
     194      store.setDimensionsPhysicalSizeX(pixelSizeX, 0, 0); 
     195      store.setDimensionsPhysicalSizeY(pixelSizeY, 0, 0); 
     196    } 
    192197  } 
    193198 
  • trunk/components/bio-formats/src/loci/formats/in/WATOPReader.java

    r6055 r6148  
    9090    in.order(isLittleEndian()); 
    9191 
    92     in.seek(49); 
    93     String comment = in.readString(33); 
     92    String comment = null; 
     93 
     94    MetadataLevel level = getMetadataOptions().getMetadataLevel(); 
     95    if (level == MetadataLevel.ALL) { 
     96      in.seek(49); 
     97      comment = in.readString(33); 
     98    } 
    9499 
    95100    in.seek(211); 
     
    111116    core[0].sizeY = in.readInt(); 
    112117 
    113     double tunnelCurrent = in.readInt() / 1000d; 
    114     double sampleVolts = in.readInt() / 1000d; 
     118    if (level == MetadataLevel.ALL) { 
     119      double tunnelCurrent = in.readInt() / 1000d; 
     120      double sampleVolts = in.readInt() / 1000d; 
    115121 
    116     in.skipBytes(180); 
     122      in.skipBytes(180); 
    117123 
    118     int originalZMax = in.readInt(); 
    119     int originalZMin = in.readInt(); 
    120     int zMax = in.readInt(); 
    121     int zMin = in.readInt(); 
     124      int originalZMax = in.readInt(); 
     125      int originalZMin = in.readInt(); 
     126      int zMax = in.readInt(); 
     127      int zMin = in.readInt(); 
    122128 
    123     addGlobalMeta("Comment", comment); 
    124     addGlobalMeta("X size (in um)", xSize); 
    125     addGlobalMeta("Y size (in um)", ySize); 
    126     addGlobalMeta("Z size (in um)", zSize); 
    127     addGlobalMeta("Tunnel current (in amps)", tunnelCurrent); 
    128     addGlobalMeta("Sample volts", sampleVolts); 
    129     addGlobalMeta("Acquisition date", date); 
     129      addGlobalMeta("Comment", comment); 
     130      addGlobalMeta("X size (in um)", xSize); 
     131      addGlobalMeta("Y size (in um)", ySize); 
     132      addGlobalMeta("Z size (in um)", zSize); 
     133      addGlobalMeta("Tunnel current (in amps)", tunnelCurrent); 
     134      addGlobalMeta("Sample volts", sampleVolts); 
     135      addGlobalMeta("Acquisition date", date); 
     136    } 
    130137 
    131138    core[0].pixelType = FormatTools.INT16; 
     
    141148    MetadataTools.populatePixels(store, this); 
    142149 
    143     store.setImageDescription(comment, 0); 
    144150    store.setImageCreationDate(date, 0); 
    145     store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
    146     store.setDimensionsPhysicalSizeY((double) ySize / getSizeY(), 0, 0); 
     151 
     152    if (level == MetadataLevel.ALL) { 
     153      store.setImageDescription(comment, 0); 
     154      store.setDimensionsPhysicalSizeX((double) xSize / getSizeX(), 0, 0); 
     155      store.setDimensionsPhysicalSizeY((double) ySize / getSizeY(), 0, 0); 
     156    } 
    147157  } 
    148158 
Note: See TracChangeset for help on using the changeset viewer.