Changeset 7287 for branches/4.1


Ignore:
Timestamp:
12/01/10 17:03:30 (9 years ago)
Author:
melissa
Message:

Parse some more (undocumented) metadata from STK files, including channel names.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/4.1/components/bio-formats/src/loci/formats/in/MetamorphReader.java

    r7178 r7287  
    11821182          value = binning; 
    11831183          break; 
     1184        case 49: 
     1185          in.seek(valOrOffset); 
     1186          readPlaneData(); 
     1187          break; 
    11841188      } 
    11851189      addSeriesMeta(key, value); 
     
    12691273    FormatTools.assertId(currentId, false, 1); 
    12701274    canLookForND = v; 
     1275  } 
     1276 
     1277  private void readPlaneData() throws IOException { 
     1278    in.skipBytes(4); 
     1279    int keyLength = in.read(); 
     1280    String key = in.readString(keyLength); 
     1281    in.skipBytes(4); 
     1282 
     1283    int type = in.read(); 
     1284    int index = 0; 
     1285 
     1286    switch (type) { 
     1287      case 1: 
     1288        in.skipBytes(1); 
     1289        while (getGlobalMeta("Channel #" + index + " " + key) != null) { 
     1290          index++; 
     1291        } 
     1292        addGlobalMeta("Channel #" + index + " " + key, in.readDouble()); 
     1293        break; 
     1294      case 2: 
     1295        int valueLength = in.read(); 
     1296        String value = in.readString(valueLength); 
     1297        if (valueLength == 0) { 
     1298          in.skipBytes(4); 
     1299          valueLength = in.read(); 
     1300          value = in.readString(valueLength); 
     1301        } 
     1302        while (getGlobalMeta("Channel #" + index + " " + key) != null) { 
     1303          index++; 
     1304        } 
     1305        addGlobalMeta("Channel #" + index + " " + key, value); 
     1306 
     1307        if (key.equals("_IllumSetting_")) { 
     1308          if (waveNames == null) waveNames = new Vector<String>(); 
     1309          waveNames.add(value); 
     1310        } 
     1311        break; 
     1312    } 
    12711313  } 
    12721314 
Note: See TracChangeset for help on using the changeset viewer.