Changeset 4784


Ignore:
Timestamp:
02/06/09 08:22:13 (11 years ago)
Author:
melissa
Message:

Updated 4.0 release branch to reflect trunk.

Location:
branches/4.0.0
Files:
19 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/4.0.0/components/bio-formats/src/loci/formats/in/FEIReader.java

    r4648 r4784  
    9393  /* @see loci.formats.FormatReader#initFile(String) */ 
    9494  protected void initFile(String id) throws FormatException, IOException { 
    95     if (debug) debug("PCXReader.initFile(" + id + ")"); 
     95    if (debug) debug("FEIReader.initFile(" + id + ")"); 
    9696    super.initFile(id); 
    9797    in = new RandomAccessStream(id); 
  • branches/4.0.0/components/bio-formats/src/loci/formats/in/ICSReader.java

    r4750 r4784  
    668668      store.setDimensionsPhysicalSizeZ(pixZ, 0, 0); 
    669669      store.setDimensionsTimeIncrement(pixT, 0, 0); 
    670       if (pixC.intValue() > 0) store.setDimensionsWaveIncrement(pixC, 0, 0); 
     670      if (pixC != null && pixC.intValue() > 0) { 
     671        store.setDimensionsWaveIncrement(pixC, 0, 0); 
     672      } 
    671673    } 
    672674    else if (sizes != null) { 
  • branches/4.0.0/components/bio-formats/src/loci/formats/in/InCellReader.java

    r4774 r4784  
    4747  // -- Fields -- 
    4848 
    49   private Vector tiffs; 
     49  private Image[][][] imageFiles; 
    5050  private MinimalTiffReader tiffReader; 
    5151  private int seriesCount; 
    5252  private Vector emWaves, exWaves; 
    53   private Vector timings; 
    5453  private int totalImages; 
    5554  private String creationDate; 
    5655  private int startRow, startCol; 
    57   private int fieldCount, zCount; 
     56  private int fieldCount; 
    5857 
    5958  private int wellRows, wellCols; 
    60   private Vector wellCoordinates; 
     59  private Hashtable wellCoordinates; 
     60  private Vector posX, posY; 
     61 
     62  private int firstRow, firstCol; 
     63  private int lastCol; 
    6164 
    6265  // -- Constructor -- 
     
    98101    FormatTools.checkPlaneNumber(this, no); 
    99102    FormatTools.checkBufferSize(this, buf.length, w, h); 
    100     tiffReader.setId((String) tiffs.get(series * getImageCount() + no)); 
     103 
     104    int well = getWellFromSeries(getSeries()); 
     105    int field = getFieldFromSeries(getSeries()); 
     106    tiffReader.setId(imageFiles[well][field][no].filename); 
    101107    return tiffReader.openBytes(0, buf, x, y, w, h); 
    102108  } 
     
    105111  public String[] getUsedFiles() { 
    106112    FormatTools.assertId(currentId, true, 1); 
    107     Vector v = new Vector(); 
    108     v.add(currentId); 
    109     for (int i=0; i<tiffs.size(); i++) { 
    110       v.add(tiffs.get(i)); 
    111     } 
    112     return (String[]) v.toArray(new String[0]); 
     113    String[] files = new String[getSeriesCount() * getImageCount() + 1]; 
     114    int nextFile = 0; 
     115    if (imageFiles != null) { 
     116      for (int series=0; series<getSeriesCount(); series++) { 
     117        int well = getWellFromSeries(series); 
     118        int field = getFieldFromSeries(series); 
     119        for (int plane=0; plane<getImageCount(); plane++) { 
     120          files[nextFile++] = imageFiles[well][field][plane].filename; 
     121        } 
     122      } 
     123    } 
     124    files[files.length - 1] = currentId; 
     125    return files; 
    113126  } 
    114127 
     
    118131  public void close() throws IOException { 
    119132    super.close(); 
    120     tiffs = null; 
     133    imageFiles = null; 
    121134    if (tiffReader != null) tiffReader.close(); 
    122135    tiffReader = null; 
     
    126139    emWaves = exWaves = null; 
    127140    wellCoordinates = null; 
    128     timings = null; 
     141    posX = null; 
     142    posY = null; 
    129143    creationDate = null; 
    130144    wellRows = wellCols = 0; 
    131145    startRow = startCol = 0; 
    132     fieldCount = zCount = 0; 
     146    fieldCount = 0; 
    133147  } 
    134148 
     
    141155    in = new RandomAccessStream(id); 
    142156 
    143     tiffs = new Vector(); 
     157    firstRow = Integer.MAX_VALUE; 
     158    firstCol = Integer.MAX_VALUE; 
     159    lastCol = Integer.MIN_VALUE; 
     160 
    144161    emWaves = new Vector(); 
    145162    exWaves = new Vector(); 
    146     timings = new Vector(); 
    147  
    148     wellCoordinates = new Vector(); 
     163 
     164    wellCoordinates = new Hashtable(); 
     165    posX = new Vector(); 
     166    posY = new Vector(); 
    149167 
    150168    byte[] b = new byte[(int) in.length()]; 
    151169    in.read(b); 
     170 
     171    core[0].dimensionOrder = "XYZCT"; 
    152172 
    153173    MetadataStore store = 
     
    156176    DataTools.parseXML(b, handler); 
    157177 
    158     core[0].sizeZ = fieldCount * zCount; 
     178    if (getSizeZ() == 0) core[0].sizeZ = 1; 
     179    if (getSizeC() == 0) core[0].sizeC = 1; 
     180    if (getSizeT() == 0) core[0].sizeT = 1; 
    159181 
    160182    seriesCount = totalImages / (getSizeZ() * getSizeC() * getSizeT()); 
     
    175197 
    176198    tiffReader = new MinimalTiffReader(); 
     199    tiffReader.setId( 
     200      imageFiles[getWellFromSeries(0)][getFieldFromSeries(0)][0].filename); 
    177201 
    178202    int nextTiming = 0; 
    179203    for (int i=0; i<seriesCount; i++) { 
    180       tiffReader.setId((String) tiffs.get(i * (tiffs.size() / seriesCount))); 
    181204      core[i].sizeX = tiffReader.getSizeX(); 
    182205      core[i].sizeY = tiffReader.getSizeY(); 
     
    199222 
    200223    for (int i=0; i<seriesCount; i++) { 
    201       store.setImageName("", i); 
     224      int well = getWellFromSeries(i); 
     225      int field = getFieldFromSeries(i); 
     226      store.setImageName("Well #" + well + ", Field #" + field, i); 
    202227      store.setImageCreationDate(creationDate, i); 
    203228    } 
     
    206231 
    207232    for (int i=0; i<seriesCount; i++) { 
     233      int well = getWellFromSeries(i); 
     234      int field = getFieldFromSeries(i); 
    208235      for (int q=0; q<core[i].imageCount; q++) { 
    209         store.setPlaneTimingDeltaT((Float) timings.get(nextTiming++), i, 0, q); 
    210         //store.setPlaneTimingExposureTime(new Float(0), i, 0, q); 
     236        Image img = imageFiles[well][field][q]; 
     237        store.setPlaneTimingDeltaT(img.deltaT, i, 0, q); 
     238        store.setPlaneTimingExposureTime(img.exposure, i, 0, q); 
    211239      } 
    212240    } 
     
    223251    // populate Well data 
    224252 
     253    int[][] plate = new int[wellRows][wellCols]; 
     254 
    225255    for (int i=0; i<seriesCount; i++) { 
    226       int row = (int) ((Point) wellCoordinates.get(i)).x - startRow; 
    227       int col = (int) ((Point) wellCoordinates.get(i)).y - startCol; 
    228       store.setWellSampleIndex(new Integer(i), 0, row*wellCols + col, 0); 
    229       store.setWellSampleImageRef("Image:" + i, 0, row * wellCols + col, 0); 
    230     } 
     256      int well = getWellFromSeries(i); 
     257      int field = getFieldFromSeries(i); 
     258 
     259      store.setWellSampleIndex(new Integer(i), 0, well, field); 
     260      store.setWellSampleImageRef("Image:" + i, 0, well, field); 
     261      store.setWellSamplePosX((Float) posX.get(field), 0, well, field); 
     262      store.setWellSamplePosY((Float) posY.get(field), 0, well, field); 
     263    } 
     264  } 
     265 
     266  // -- Helper methods -- 
     267 
     268  private int getFieldFromSeries(int series) { 
     269    return series % fieldCount; 
     270  } 
     271 
     272  private int getWellFromSeries(int series) { 
     273    int well = series / fieldCount; 
     274    int wellRow = well / (lastCol - firstCol + 1); 
     275    int wellCol = well % (lastCol - firstCol + 1); 
     276    return (wellRow + firstRow) * wellCols + wellCol + firstCol; 
    231277  } 
    232278 
     
    234280 
    235281  class MinimalInCellHandler extends DefaultHandler { 
     282    private String currentImageFile; 
     283    private int wellRow, wellCol; 
     284 
     285    public void endElement(String uri, String localName, String qName) { 
     286      if (qName.equals("PlateMap")) { 
     287        int imageCount = getSizeZ() * getSizeC() * getSizeT(); 
     288        imageFiles = new Image[wellRows * wellCols][fieldCount][imageCount]; 
     289      } 
     290    } 
     291 
    236292    public void startElement(String uri, String localName, String qName, 
    237293      Attributes attributes) 
    238294    { 
    239       if (qName.equals("Images")) { 
     295      if (qName.equals("Plate")) { 
     296        wellRows = Integer.parseInt(attributes.getValue("rows")); 
     297        wellCols = Integer.parseInt(attributes.getValue("columns")); 
     298      } 
     299      else if (qName.equals("Images")) { 
    240300        totalImages = Integer.parseInt(attributes.getValue("number")); 
    241301      } 
     
    245305        Location current = new Location(currentId).getAbsoluteFile(); 
    246306 
    247         if (new Location(current.getParentFile(), file).exists()) { 
    248           tiffs.add( 
    249             new Location(current.getParentFile(), file).getAbsolutePath()); 
    250         } 
    251         else tiffs.add(file); 
     307        Location imageFile = new Location(current.getParentFile(), file); 
     308        if (imageFile.exists()) { 
     309          currentImageFile = imageFile.getAbsolutePath(); 
     310        } 
     311        else currentImageFile = file; 
    252312      } 
    253313      else if (qName.equals("Identifier")) { 
    254         int field = Integer.parseInt(attributes.getValue("field_index")) + 1; 
    255         int z = Integer.parseInt(attributes.getValue("z_index")) + 1; 
    256         int c = Integer.parseInt(attributes.getValue("wave_index")) + 1; 
    257         int t = Integer.parseInt(attributes.getValue("time_index")) + 1; 
    258         fieldCount = (int) Math.max(fieldCount, field); 
    259         zCount = (int) Math.max(zCount, z); 
    260         core[0].sizeC = (int) Math.max(getSizeC(), c); 
    261         core[0].sizeT = (int) Math.max(getSizeT(), t); 
     314        int field = Integer.parseInt(attributes.getValue("field_index")); 
     315        int z = Integer.parseInt(attributes.getValue("z_index")); 
     316        int c = Integer.parseInt(attributes.getValue("wave_index")); 
     317        int t = Integer.parseInt(attributes.getValue("time_index")); 
     318        core[0].imageCount = getSizeZ() * getSizeC() * getSizeT(); 
     319        int index = getIndex(z, c, t); 
     320 
     321        Image img = new Image(); 
     322        img.filename = currentImageFile; 
     323        imageFiles[wellRow * wellCols + wellCol][field][index] = img; 
     324      } 
     325      else if (qName.equals("offset_point")) { 
     326        fieldCount++; 
     327      } 
     328      else if (qName.equals("TimePoint")) { 
     329        core[0].sizeT++; 
     330      } 
     331      else if (qName.equals("Wavelength")) { 
     332        core[0].sizeC++; 
     333      } 
     334      else if (qName.equals("ZDimensionParameters")) { 
     335        String nz = attributes.getValue("number_of_slices"); 
     336        if (nz != null) { 
     337          core[0].sizeZ = Integer.parseInt(nz); 
     338        } 
     339        else core[0].sizeZ = 1; 
     340      } 
     341      else if (qName.equals("Row")) { 
     342        wellRow = Integer.parseInt(attributes.getValue("number")) - 1; 
     343        firstRow = (int) Math.min(firstRow, wellRow); 
     344      } 
     345      else if (qName.equals("Column")) { 
     346        wellCol = Integer.parseInt(attributes.getValue("number")) - 1; 
     347        firstCol = (int) Math.min(firstCol, wellCol); 
     348        lastCol = (int) Math.max(lastCol, wellCol); 
    262349      } 
    263350    } 
     
    267354  class InCellHandler extends DefaultHandler { 
    268355    private String currentQName; 
     356    private boolean openImage; 
    269357    private int nextEmWave = 0; 
    270358    private int nextExWave = 0; 
     
    272360    private int nextPlate = 0; 
    273361    private int currentRow = -1, currentCol = -1; 
     362    private int currentField = 0; 
     363    private int currentImage; 
     364    private Float timestamp, exposure; 
    274365 
    275366    public InCellHandler(MetadataStore store) { 
     
    287378      if (qName.equals("Image")) { 
    288379        Point p = new Point(currentRow, currentCol); 
    289         if (!wellCoordinates.contains(p)) wellCoordinates.add(p); 
     380        wellCoordinates.put(new Integer(currentField), p); 
     381        openImage = false; 
     382 
     383        int well = currentRow * wellCols + currentCol; 
     384        imageFiles[well][currentField][currentImage].deltaT = timestamp; 
     385        imageFiles[well][currentField][currentImage].exposure = exposure; 
    290386      } 
    291387    } 
     
    300396 
    301397      if (qName.equals("Image")) { 
    302         float timestamp = 
     398        openImage = true; 
     399        float time = 
    303400          Float.parseFloat(attributes.getValue("acquisition_time_ms")); 
    304         timings.add(new Float(timestamp / 1000)); 
     401        timestamp = new Float(time / 1000); 
     402      } 
     403      else if (qName.equals("Identifier")) { 
     404        currentField = Integer.parseInt(attributes.getValue("field_index")); 
     405        int z = Integer.parseInt(attributes.getValue("z_index")); 
     406        int c = Integer.parseInt(attributes.getValue("wave_index")); 
     407        int t = Integer.parseInt(attributes.getValue("time_index")); 
     408        currentImage = getIndex(z, c, t); 
    305409      } 
    306410      else if (qName.equals("Creation")) { 
     
    310414      } 
    311415      else if (qName.equals("ObjectiveCalibration")) { 
    312         store.setObjectiveCalibratedMagnification( 
    313           new Float(attributes.getValue("magnification")), 0, 0); 
     416        store.setObjectiveNominalMagnification(new Integer( 
     417          (int) Float.parseFloat(attributes.getValue("magnification"))), 0, 0); 
    314418        store.setObjectiveModel(attributes.getValue("objective_name"), 0, 0); 
    315419        store.setObjectiveLensNA(new Float( 
     
    318422        store.setObjectiveImmersion("Unknown", 0, 0); 
    319423 
     424        Float pixelSizeX = new Float(attributes.getValue("pixel_width")); 
     425        Float pixelSizeY = new Float(attributes.getValue("pixel_height")); 
     426        Float refractive = new Float(attributes.getValue("refractive_index")); 
     427 
    320428        // link Objective to Image 
    321429        store.setObjectiveID("Objective:0", 0, 0); 
    322         store.setObjectiveSettingsObjective("Objective:0", 0); 
     430        for (int i=0; i<getSeriesCount(); i++) { 
     431          store.setObjectiveSettingsObjective("Objective:0", i); 
     432          store.setObjectiveSettingsRefractiveIndex(refractive, i); 
     433          store.setDimensionsPhysicalSizeX(pixelSizeX, i, 0); 
     434          store.setDimensionsPhysicalSizeY(pixelSizeY, i, 0); 
     435        } 
    323436      } 
    324437      else if (qName.equals("ExcitationFilter")) { 
     
    330443        if (wave != null) emWaves.add(new Integer(wave)); 
    331444      } 
     445      else if (qName.equals("Camera")) { 
     446        store.setDetectorModel(attributes.getValue("name"), 0, 0); 
     447        store.setDetectorType("Unknown", 0, 0); 
     448        store.setDetectorID("Detector:0", 0, 0); 
     449        for (int i=0; i<getSeriesCount(); i++) { 
     450          for (int q=0; q<getSizeC(); q++) { 
     451            store.setDetectorSettingsDetector("Detector:0", i, q); 
     452          } 
     453        } 
     454      } 
     455      else if (qName.equals("Binning")) { 
     456        String binning = attributes.getValue("value"); 
     457        for (int i=0; i<getSeriesCount(); i++) { 
     458          for (int q=0; q<getSizeC(); q++) { 
     459            store.setDetectorSettingsBinning(binning, i, q); 
     460          } 
     461        } 
     462      } 
     463      else if (qName.equals("Gain")) { 
     464        Float gain = new Float(attributes.getValue("value")); 
     465        for (int i=0; i<getSeriesCount(); i++) { 
     466          for (int q=0; q<getSizeC(); q++) { 
     467            store.setDetectorSettingsGain(gain, i, q); 
     468          } 
     469        } 
     470      } 
     471      else if (qName.equals("PlateTemperature")) { 
     472        Float temperature = new Float(attributes.getValue("value")); 
     473        for (int i=0; i<getSeriesCount(); i++) { 
     474          store.setImagingEnvironmentTemperature(temperature, i); 
     475        } 
     476      } 
    332477      else if (qName.equals("Plate")) { 
    333478        store.setPlateName(new Location(getCurrentFile()).getName(), nextPlate); 
    334         wellRows = Integer.parseInt(attributes.getValue("rows")); 
    335         wellCols = Integer.parseInt(attributes.getValue("columns")); 
    336479 
    337480        for (int r=0; r<wellRows; r++) { 
     
    344487      } 
    345488      else if (qName.equals("Row")) { 
    346         currentRow = Integer.parseInt(attributes.getValue("number")); 
     489        currentRow = Integer.parseInt(attributes.getValue("number")) - 1; 
    347490      } 
    348491      else if (qName.equals("Column")) { 
    349         currentCol = Integer.parseInt(attributes.getValue("number")); 
     492        currentCol = Integer.parseInt(attributes.getValue("number")) - 1; 
     493      } 
     494      else if (qName.equals("Exposure") && openImage) { 
     495        float exp = Float.parseFloat(attributes.getValue("time")); 
     496        exposure = new Float(exp / 1000); 
    350497      } 
    351498      else if (qName.equals("NamingRows")) { 
     
    367514        } 
    368515      } 
    369     } 
     516      else if (qName.equals("offset_point")) { 
     517        posX.add(new Float(attributes.getValue("x"))); 
     518        posY.add(new Float(attributes.getValue("y"))); 
     519      } 
     520    } 
     521  } 
     522 
     523  class Image { 
     524    public String filename; 
     525    public Float deltaT, exposure; 
    370526  } 
    371527 
  • branches/4.0.0/components/bio-formats/src/loci/formats/out/TiffWriter.java

    r4705 r4784  
    9393  { 
    9494    MetadataRetrieve retrieve = getMetadataRetrieve(); 
    95     boolean littleEndian = retrieve == null ? false : 
    96       !retrieve.getPixelsBigEndian(series, 0).booleanValue(); 
     95    Boolean bigEndian = retrieve.getPixelsBigEndian(series, 0); 
     96    boolean littleEndian = bigEndian == null ? 
     97      false : !bigEndian.booleanValue(); 
    9798 
    9899    if (!initialized) { 
  • branches/4.0.0/components/bio-formats/src/loci/formats/readers.txt

    r4770 r4784  
    6363loci.formats.in.MRWReader             # mrw 
    6464loci.formats.in.TillVisionReader      # vws 
     65loci.formats.in.ARFReader             # arf 
    6566 
    6667# multi-extension messes 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hpsf/package.html

    r4424 r4784  
    3636   <p>In order to extract the properties from a POI filesystem, a property set 
    3737    stream's contents must be parsed into a {@link 
    38     org.apache.poi.hpsf.PropertySet} instance.  Its subclasses {@link 
    39     org.apache.poi.hpsf.SummaryInformation} and {@link 
    40     org.apache.poi.hpsf.DocumentSummaryInformation} deal with the well-known 
     38    loci.poi.hpsf.PropertySet} instance.  Its subclasses {@link 
     39    loci.poi.hpsf.SummaryInformation} and {@link 
     40    loci.poi.hpsf.DocumentSummaryInformation} deal with the well-known 
    4141    property set streams <tt>\005SummaryInformation</tt> and 
    4242    <tt>\005DocumentSummaryInformation</tt>. (However, the streams' names are 
     
    4444    see below.)</p> 
    4545 
    46    <p>The factory method {@link org.apache.poi.hpsf.PropertySetFactory#create} 
    47     creates a {@link org.apache.poi.hpsf.PropertySet} instance. This method 
     46   <p>The factory method {@link loci.poi.hpsf.PropertySetFactory#create} 
     47    creates a {@link loci.poi.hpsf.PropertySet} instance. This method 
    4848    always returns the <strong>most specific property set</strong>: If it 
    4949    identifies the stream data as a Summary Information or as a Document 
    5050    Summary Information it returns an instance of the corresponding class, else 
    51     the general {@link org.apache.poi.hpsf.PropertySet}.</p> 
     51    the general {@link loci.poi.hpsf.PropertySet}.</p> 
    5252 
    53    <p>A {@link org.apache.poi.hpsf.PropertySet} contains a list of {@link 
    54     org.apache.poi.hpsf.Section}s which can be retrieved  with {@link 
    55     org.apache.poi.hpsf.PropertySet#getSections}. Each {@link 
    56     org.apache.poi.hpsf.Section} contains a {@link 
    57     org.apache.poi.hpsf.Property} array which can be retrieved with {@link 
    58     org.apache.poi.hpsf.Section#getProperties}. Since the vast majority of 
    59     {@link org.apache.poi.hpsf.PropertySet}s contains only a single {@link 
    60     org.apache.poi.hpsf.Section}, the convenience method {@link 
    61     org.apache.poi.hpsf.PropertySet#getProperties} returns the properties of a 
    62     {@link org.apache.poi.hpsf.PropertySet}'s  {@link 
    63     org.apache.poi.hpsf.Section} (throwing a {@link 
    64     org.apache.poi.hpsf.NoSingleSectionException} if the {@link 
    65     org.apache.poi.hpsf.PropertySet} contains more (or less) than exactly one 
    66     {@link org.apache.poi.hpsf.Section}).</p> 
     53   <p>A {@link loci.poi.hpsf.PropertySet} contains a list of {@link 
     54    loci.poi.hpsf.Section}s which can be retrieved  with {@link 
     55    loci.poi.hpsf.PropertySet#getSections}. Each {@link 
     56    loci.poi.hpsf.Section} contains a {@link 
     57    loci.poi.hpsf.Property} array which can be retrieved with {@link 
     58    loci.poi.hpsf.Section#getProperties}. Since the vast majority of 
     59    {@link loci.poi.hpsf.PropertySet}s contains only a single {@link 
     60    loci.poi.hpsf.Section}, the convenience method {@link 
     61    loci.poi.hpsf.PropertySet#getProperties} returns the properties of a 
     62    {@link loci.poi.hpsf.PropertySet}'s  {@link 
     63    loci.poi.hpsf.Section} (throwing a {@link 
     64    loci.poi.hpsf.NoSingleSectionException} if the {@link 
     65    loci.poi.hpsf.PropertySet} contains more (or less) than exactly one 
     66    {@link loci.poi.hpsf.Section}).</p> 
    6767 
    68    <p>Each {@link org.apache.poi.hpsf.Property} has an <strong>ID</strong>, a 
     68   <p>Each {@link loci.poi.hpsf.Property} has an <strong>ID</strong>, a 
    6969    <strong>type</strong>, and a <strong>value</strong> which can be retrieved 
    70     with {@link org.apache.poi.hpsf.Property#getID}, {@link 
    71     org.apache.poi.hpsf.Property#getType}, and {@link 
    72     org.apache.poi.hpsf.Property#getValue}, respectively. The value's class 
     70    with {@link loci.poi.hpsf.Property#getID}, {@link 
     71    loci.poi.hpsf.Property#getType}, and {@link 
     72    loci.poi.hpsf.Property#getValue}, respectively. The value's class 
    7373    depends on the property's type. <!-- FIXME: --> The current implementation 
    7474    does not yet support all property types and restricts the values' classes 
     
    7777    containing the value's origin bytes from the property set stream.</p> 
    7878 
    79    <p>To retrieve the value of a specific {@link org.apache.poi.hpsf.Property}, 
    80     use {@link org.apache.poi.hpsf.Section#getProperty} or {@link 
    81     org.apache.poi.hpsf.Section#getPropertyIntValue}.</p> 
     79   <p>To retrieve the value of a specific {@link loci.poi.hpsf.Property}, 
     80    use {@link loci.poi.hpsf.Section#getProperty} or {@link 
     81    loci.poi.hpsf.Section#getPropertyIntValue}.</p> 
    8282 
    83    <p>The {@link org.apache.poi.hpsf.SummaryInformation} and {@link 
    84     org.apache.poi.hpsf.DocumentSummaryInformation} classes provide convenience 
     83   <p>The {@link loci.poi.hpsf.SummaryInformation} and {@link 
     84    loci.poi.hpsf.DocumentSummaryInformation} classes provide convenience 
    8585    methods for retrieving well-known properties. For example, an application 
    8686    that wants to retrieve a document's title string just calls {@link 
    87     org.apache.poi.hpsf.SummaryInformation#getTitle} instead of going through 
     87    loci.poi.hpsf.SummaryInformation#getTitle} instead of going through 
    8888    the hassle of first finding out what the title's property ID is and then 
    8989    using this ID to get the property's value.</p> 
    9090 
    9191   <p>Writing properties can be done with the classes 
    92     {@link org.apache.poi.hpsf.MutablePropertySet}, {@link 
    93     org.apache.poi.hpsf.MutableSection}, and {@link 
    94     org.apache.poi.hpsf.MutableProperty}.</p> 
     92    {@link loci.poi.hpsf.MutablePropertySet}, {@link 
     93    loci.poi.hpsf.MutableSection}, and {@link 
     94    loci.poi.hpsf.MutableProperty}.</p> 
    9595 
    9696   <p>Public documentation from Microsoft can be found in the  <a  
     
    105105 
    106106     <dd> 
    107       <p>{@link org.apache.poi.hpsf.PropertySetFactory#create(InputStream)} no 
     107      <p>{@link loci.poi.hpsf.PropertySetFactory#create(InputStream)} no 
    108108       longer throws an 
    109        {@link org.apache.poi.hpsf.UnexpectedPropertySetTypeException}.</p></dd> 
     109       {@link loci.poi.hpsf.UnexpectedPropertySetTypeException}.</p></dd> 
    110110    </dl> 
    111111   </div> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hssf/model/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.hssf.usermodel 
     35@see loci.poi.hssf.usermodel 
    3636 
    3737</body> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hssf/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.poifs 
    36 @see org.apache.poi.hpsf 
     35@see loci.poi.poifs 
     36@see loci.poi.hpsf 
    3737</body> 
    3838</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hssf/record/aggregates/package.html

    r4424 r4784  
    3434 
    3535<!-- Put @see and @since tags down here. --> 
    36 @see org.apache.poi.hssf.record 
    37 @see org.apache.poi.hssf.eventmodel 
    38 @see org.apache.poi.hssf.record.RecordFactory 
     36@see loci.poi.hssf.record 
     37@see loci.poi.hssf.eventmodel 
     38@see loci.poi.hssf.record.RecordFactory 
    3939</body> 
    4040</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hssf/record/formula/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.hssf.record 
    36 @see org.apache.poi.hssf.record.FormulaRecord 
     35@see loci.poi.hssf.record 
     36@see loci.poi.hssf.record.FormulaRecord 
    3737</body> 
    3838</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/hssf/record/package.html

    r4424 r4784  
    3434 
    3535<!-- Put @see and @since tags down here. --> 
    36 @see org.apache.poi.hssf.eventmodel 
    37 @see org.apache.poi.hssf.record.RecordFactory 
     36@see loci.poi.hssf.eventmodel 
     37@see loci.poi.hssf.record.RecordFactory 
    3838</body> 
    3939</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/poifs/eventfilesystem/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.poifs.filesystem 
     35@see loci.poi.poifs.filesystem 
    3636</body> 
    3737</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/poifs/filesystem/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.poifs.eventfilesystem 
     35@see loci.poi.poifs.eventfilesystem 
    3636</body> 
    3737</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/poifs/package.html

    r4424 r4784  
    3434 
    3535<!-- Put @see and @since tags down here. --> 
    36 @see org.apache.poi.hssf 
    37 @see org.apache.poi.hpsf 
     36@see loci.poi.hssf 
     37@see loci.poi.hpsf 
    3838</body> 
    3939</html> 
  • branches/4.0.0/components/forks/poi/src/loci/poi/poifs/property/package.html

    r4424 r4784  
    3333 
    3434<!-- Put @see and @since tags down here. --> 
    35 @see org.apache.poi.poifs.filesystem 
     35@see loci.poi.poifs.filesystem 
    3636</body> 
    3737</html> 
  • branches/4.0.0/components/loci-plugins/src/loci/plugins/Checker.java

    r4538 r4784  
    8282          "loci-common.jar", missing); 
    8383        checkLibrary("loci.formats.FormatHandler", "bio-formats.jar", missing); 
    84         checkLibrary("org.apache.poi.poifs.filesystem.POIFSDocument", 
     84        checkLibrary("loci.poi.poifs.filesystem.POIFSDocument", 
    8585          "poi-loci.jar", missing); 
    8686        checkLibrary("mdbtools.libmdb.MdbFile", "mdbtools-java.jar", missing); 
  • branches/4.0.0/components/loci-plugins/src/loci/plugins/config/libraries.txt

    r4435 r4784  
    228228[Apache Jakarta POI (LOCI version)] 
    229229type = Java library 
    230 class = org.apache.poi.poifs.filesystem.POIFSDocument 
     230class = loci.poi.poifs.filesystem.POIFSDocument 
    231231url = http://jakarta.apache.org/poi/ 
    232232license = Apache 
  • branches/4.0.0/components/visbio/src/loci/visbio/classes.txt

    r1311 r4784  
    23092309loci.formats.ZeissLSMReader 
    23102310loci.formats.ZeissZVIReader 
     2311loci.poi.hpsf.ClassID 
     2312loci.poi.poifs.dev.POIFSViewable 
     2313loci.poi.poifs.filesystem.BATManaged 
     2314loci.poi.poifs.filesystem.DirectoryEntry 
     2315loci.poi.poifs.filesystem.DirectoryNode 
     2316loci.poi.poifs.filesystem.DocumentEntry 
     2317loci.poi.poifs.filesystem.DocumentInputStream 
     2318loci.poi.poifs.filesystem.DocumentNode 
     2319loci.poi.poifs.filesystem.Entry 
     2320loci.poi.poifs.filesystem.EntryNode 
     2321loci.poi.poifs.filesystem.POIFSDocument 
     2322loci.poi.poifs.filesystem.POIFSDocument$BigBlockStore 
     2323loci.poi.poifs.filesystem.POIFSDocument$SmallBlockStore 
     2324loci.poi.poifs.filesystem.POIFSDocumentPath 
     2325loci.poi.poifs.filesystem.POIFSFileSystem 
     2326loci.poi.poifs.filesystem.POIFSWriterListener 
     2327loci.poi.poifs.property.Child 
     2328loci.poi.poifs.property.DirectoryProperty 
     2329loci.poi.poifs.property.DocumentProperty 
     2330loci.poi.poifs.property.Parent 
     2331loci.poi.poifs.property.Property 
     2332loci.poi.poifs.property.PropertyFactory 
     2333loci.poi.poifs.property.PropertyTable 
     2334loci.poi.poifs.property.RootProperty 
     2335loci.poi.poifs.storage.BATBlock 
     2336loci.poi.poifs.storage.BigBlock 
     2337loci.poi.poifs.storage.BlockAllocationTableReader 
     2338loci.poi.poifs.storage.BlockList 
     2339loci.poi.poifs.storage.BlockListImpl 
     2340loci.poi.poifs.storage.BlockWritable 
     2341loci.poi.poifs.storage.DocumentBlock 
     2342loci.poi.poifs.storage.HeaderBlockConstants 
     2343loci.poi.poifs.storage.HeaderBlockReader 
     2344loci.poi.poifs.storage.ListManagedBlock 
     2345loci.poi.poifs.storage.RawDataBlock 
     2346loci.poi.poifs.storage.RawDataBlockList 
     2347loci.poi.poifs.storage.SmallBlockTableReader 
     2348loci.poi.poifs.storage.SmallDocumentBlock 
     2349loci.poi.poifs.storage.SmallDocumentBlockList 
     2350loci.poi.util.ByteField 
     2351loci.poi.util.FixedField 
     2352loci.poi.util.IOUtils 
     2353loci.poi.util.IntList 
     2354loci.poi.util.IntegerField 
     2355loci.poi.util.LittleEndian 
     2356loci.poi.util.LittleEndian$BufferUnderrunException 
     2357loci.poi.util.LittleEndianConsts 
     2358loci.poi.util.LongField 
     2359loci.poi.util.ShortField 
    23112360loci.visbio.BioDropHandler 
    23122361loci.visbio.BioTask 
     
    25212570org.apache.crimson.util.XmlChars 
    25222571org.apache.crimson.util.XmlNames 
    2523 org.apache.poi.hpsf.ClassID 
    2524 org.apache.poi.poifs.dev.POIFSViewable 
    2525 org.apache.poi.poifs.filesystem.BATManaged 
    2526 org.apache.poi.poifs.filesystem.DirectoryEntry 
    2527 org.apache.poi.poifs.filesystem.DirectoryNode 
    2528 org.apache.poi.poifs.filesystem.DocumentEntry 
    2529 org.apache.poi.poifs.filesystem.DocumentInputStream 
    2530 org.apache.poi.poifs.filesystem.DocumentNode 
    2531 org.apache.poi.poifs.filesystem.Entry 
    2532 org.apache.poi.poifs.filesystem.EntryNode 
    2533 org.apache.poi.poifs.filesystem.POIFSDocument 
    2534 org.apache.poi.poifs.filesystem.POIFSDocument$BigBlockStore 
    2535 org.apache.poi.poifs.filesystem.POIFSDocument$SmallBlockStore 
    2536 org.apache.poi.poifs.filesystem.POIFSDocumentPath 
    2537 org.apache.poi.poifs.filesystem.POIFSFileSystem 
    2538 org.apache.poi.poifs.filesystem.POIFSWriterListener 
    2539 org.apache.poi.poifs.property.Child 
    2540 org.apache.poi.poifs.property.DirectoryProperty 
    2541 org.apache.poi.poifs.property.DocumentProperty 
    2542 org.apache.poi.poifs.property.Parent 
    2543 org.apache.poi.poifs.property.Property 
    2544 org.apache.poi.poifs.property.PropertyFactory 
    2545 org.apache.poi.poifs.property.PropertyTable 
    2546 org.apache.poi.poifs.property.RootProperty 
    2547 org.apache.poi.poifs.storage.BATBlock 
    2548 org.apache.poi.poifs.storage.BigBlock 
    2549 org.apache.poi.poifs.storage.BlockAllocationTableReader 
    2550 org.apache.poi.poifs.storage.BlockList 
    2551 org.apache.poi.poifs.storage.BlockListImpl 
    2552 org.apache.poi.poifs.storage.BlockWritable 
    2553 org.apache.poi.poifs.storage.DocumentBlock 
    2554 org.apache.poi.poifs.storage.HeaderBlockConstants 
    2555 org.apache.poi.poifs.storage.HeaderBlockReader 
    2556 org.apache.poi.poifs.storage.ListManagedBlock 
    2557 org.apache.poi.poifs.storage.RawDataBlock 
    2558 org.apache.poi.poifs.storage.RawDataBlockList 
    2559 org.apache.poi.poifs.storage.SmallBlockTableReader 
    2560 org.apache.poi.poifs.storage.SmallDocumentBlock 
    2561 org.apache.poi.poifs.storage.SmallDocumentBlockList 
    2562 org.apache.poi.util.ByteField 
    2563 org.apache.poi.util.FixedField 
    2564 org.apache.poi.util.IOUtils 
    2565 org.apache.poi.util.IntList 
    2566 org.apache.poi.util.IntegerField 
    2567 org.apache.poi.util.LittleEndian 
    2568 org.apache.poi.util.LittleEndian$BufferUnderrunException 
    2569 org.apache.poi.util.LittleEndianConsts 
    2570 org.apache.poi.util.LongField 
    2571 org.apache.poi.util.ShortField 
    25722572org.apache.xalan.extensions.ExpressionContext 
    25732573org.apache.xalan.extensions.ExpressionVisitor 
  • branches/4.0.0/scan-deps.pl

    r4612 r4784  
    293293  PATH    => "components/forks/poi", 
    294294  JAR     => "poi-loci.jar", 
    295   PACKAGE => "org.apache.poi", 
     295  PACKAGE => "loci.poi", 
    296296  DESC    => <<ZZ, 
    297297Java API to handle Microsoft OLE 2 Compound Document format (Word, Excel) 
Note: See TracChangeset for help on using the changeset viewer.