Changeset 4023


Ignore:
Timestamp:
05/07/08 16:58:13 (12 years ago)
Author:
curtis
Message:

Fix some file stitching bugs, and remove some obsolete logic.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/FileStitcher.java

    r4019 r4023  
    5151   * the result of the axis guessing algorithm. 
    5252   * 
    53    * @see AxisGuesser#getAdjustedDimensionOrder() 
     53   * @see AxisGuesser#getAdjustedOrder() 
    5454   */ 
    5555  private DimensionSwapper reader; 
     
    941941    } 
    942942 
    943     readers[0][0] = reader; 
    944943    for (int i=0; i<readers.length; i++) { 
    945944      for (int j=0; j<readers[i].length; j++) { 
     945        if (i == 0 && j == 0) { 
     946          readers[i][j] = reader; 
     947          continue; 
     948        } 
    946949        // use crazy reflection to instantiate a reader of the proper type 
    947950        try { 
     
    971974    for (int i=0; i<readers.length; i++) { 
    972975      for (int j=0; j<readers[i].length; j++) { 
     976        if (i == 0 && j == 0) continue; 
    973977        readers[i][j].setNormalized(normalized); 
    974978        readers[i][j].setMetadataFiltered(metadataFiltered); 
     
    978982        } 
    979983      } 
    980     } 
    981  
    982     reader.setId(files[0][0]); 
    983     String[] originalUsedFiles = reader.getUsedFiles(); 
    984  
    985     boolean doNotStitch = true; 
    986     for (int i=0; i<files.length; i++) { 
    987       for (int k=0; k<files[i].length; k++) { 
    988         boolean found = false; 
    989         for (int j=0; j<originalUsedFiles.length; j++) { 
    990           if (originalUsedFiles[j].endsWith(files[i][k])) { 
    991             found = true; 
    992             break; 
    993           } 
    994         } 
    995         if (!found) { 
    996           doNotStitch = false; 
    997           break; 
    998         } 
    999       } 
    1000     } 
    1001  
    1002     if (doNotStitch) { 
    1003       // the reader for this file uses its own stitching logic that is probably 
    1004       // smarter than FileStitcher 
    1005       readers = new DimensionSwapper[1][1]; 
    1006       readers[0][0] = reader; 
    1007       String f = files[0][0]; 
    1008       files = new String[1][1]; 
    1009       files[0][0] = f; 
    1010       fp = new FilePattern(files[0][0]); 
    1011984    } 
    1012985 
     
    10321005      if (seriesInFile) rr.setSeries(i); 
    10331006      else { 
     1007        initReader(i, 0); 
    10341008        rr = readers[i][0]; 
    1035         rr.setId(files[i][0]); 
    10361009      } 
    10371010 
Note: See TracChangeset for help on using the changeset viewer.