Changeset 3949


Ignore:
Timestamp:
04/18/08 12:47:55 (12 years ago)
Author:
melissa
Message:

Fixed getUsedFiles to return all of the files in the dataset.

Location:
trunk/loci/formats/in
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/in/L2DReader.java

    r3891 r3949  
    166166      String scanPath = 
    167167        new Location(scanDir, scanName + ".scn").getAbsolutePath(); 
    168       used.add(scanPath); 
     168      addDirectory(scanDir.getAbsolutePath()); 
    169169      RandomAccessStream scan = new RandomAccessStream(scanPath); 
    170170      line = scan.readLine().trim(); 
     
    184184              String path = names.nextToken().trim(); 
    185185              String tiff = new Location(scanDir, path).getAbsolutePath(); 
    186               used.add(tiff); 
    187186              tiffs[i].add(tiff); 
    188187            } 
     
    228227  } 
    229228 
     229  // -- Helper methods -- 
     230 
     231  /** 
     232   * Recursively add all of the files in the given directory to the 
     233   * used file list. 
     234   */ 
     235  private void addDirectory(String path) { Location dir = new Location(path); 
     236    String[] files = dir.list(); 
     237    for (int i=0; i<files.length; i++) { 
     238      Location file = new Location(path, files[i]); 
     239      if (file.isDirectory()) { 
     240        addDirectory(file.getAbsolutePath()); 
     241      } 
     242      else { 
     243        String check = files[i].toLowerCase(); 
     244        if (check.endsWith(".tif") || check.endsWith(".data") || 
     245          check.endsWith(".log") || check.endsWith(".scn")) 
     246        { 
     247          used.add(file.getAbsolutePath()); 
     248        } 
     249      } 
     250    } 
     251  } 
     252 
    230253} 
  • trunk/loci/formats/in/MetamorphReader.java

    r3891 r3949  
    7474  private String[][] stks; 
    7575 
     76  private String ndFilename; 
     77 
    7678  // -- Constructor -- 
    7779 
     
    103105  /* @see loci.formats.IFormatReader#getUsedFiles() */ 
    104106  public String[] getUsedFiles() { 
    105     return stks == null ? super.getUsedFiles() : stks[series]; 
     107    FormatTools.assertId(currentId, true, 1); 
     108    if (stks == null) return super.getUsedFiles(); 
     109    Vector v = new Vector(); 
     110    if (ndFilename != null) v.add(ndFilename); 
     111    for (int i=0; i<stks.length; i++) { 
     112      for (int j=0; j<stks[i].length; j++) { 
     113        v.add(stks[i][j]); 
     114      } 
     115    } 
     116    return (String[]) v.toArray(new String[0]); 
    106117  } 
    107118 
     
    139150    stks = null; 
    140151    mmPlanes = 0; 
     152    ndFilename = null; 
    141153  } 
    142154 
     
    192204    { 
    193205      // parse key/value pairs from .nd file 
     206 
     207      ndFilename = ndfile.getAbsolutePath(); 
    194208 
    195209      RandomAccessStream ndStream = 
  • trunk/loci/formats/in/ZeissLSMReader.java

    r3920 r3949  
    112112  private int validChannels; 
    113113 
     114  private String mdbFilename; 
     115 
    114116  // -- Constructor -- 
    115117 
     
    127129    timestamps = null; 
    128130    validChannels = 0; 
     131    mdbFilename = null; 
    129132  } 
    130133 
    131134  // -- IFormatReader API methods -- 
     135 
     136  /* @see loci.formats.IFormatReader#getUsedFiles() */ 
     137  public String[] getUsedFiles() { 
     138    FormatTools.assertId(currentId, true, 1); 
     139    if (mdbFilename == null) return super.getUsedFiles(); 
     140    return new String[] {currentId, mdbFilename}; 
     141  } 
    132142 
    133143  /* @see loci.formats.IFormatReader#get8BitLookupTable() */ 
     
    723733      if (checkSuffix(dirList[i], MDB_SUFFIX)) { 
    724734        try { 
    725           MDBParser.parseDatabase((new Location(dir.getPath(), 
    726             dirList[i])).getAbsolutePath(), metadata); 
     735          mdbFilename = 
     736            (new Location(dir.getPath(), dirList[i])).getAbsolutePath(); 
     737          MDBParser.parseDatabase(mdbFilename, metadata); 
    727738        } 
    728739        catch (Exception exc) { 
Note: See TracChangeset for help on using the changeset viewer.