Changeset 2713


Ignore:
Timestamp:
05/01/07 12:45:23 (13 years ago)
Author:
curtis
Message:

Update implementation notes, and what's new list.

Location:
trunk/loci/formats
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/using-bioformats.txt

    r2682 r2713  
    7373provides a few extras to make file reading more flexible. 
    7474 
    75 - loci.formats.FileStitcher extends IFormatReader, and uses advanced pattern 
    76   matching heuristics to group files that belong to the same dataset. 
    77 - loci.formats.ChannelSeparator extends IFormatReader, and makes sure that 
    78   all planes are grayscale - RGB images are split into 3 separate grayscale 
    79   images. 
    80 - loci.formats.ChannelMerger extends IFormatReader, and merges grayscale 
    81   images to RGB if the number of channels is greater than 1. 
    82 - loci.formats.MinMaxCalculator extends IFormatReader, and provides an API 
    83   for retrieving the minimum and maximum pixel values for each channel. 
    84 - loci.formats.DimensionSwapper extends IFormatReader, and provides an API 
    85   for changing the dimension order of a file. 
     75- There are a few "wrapper" readers (that implement IFormatReader) that take a 
     76  reader in the constructor, and manipulate the results somehow, for 
     77  convenience. Using them is similar to the java.io InputStream/OutputStream 
     78  model: just layer whichever functionality you need by nesting the wrappers. 
     79  + FileStitcher extends IFormatReader, and uses advanced pattern 
     80    matching heuristics to group files that belong to the same dataset. 
     81  + ChannelSeparator extends IFormatReader, and makes sure that 
     82    all planes are grayscale - RGB images are split into 3 separate grayscale 
     83    images. 
     84  + ChannelMerger extends IFormatReader, and merges grayscale 
     85    images to RGB if the number of channels is greater than 1. 
     86  + MinMaxCalculator extends IFormatReader, and provides an API 
     87    for retrieving the minimum and maximum pixel values for each channel. 
     88  + DimensionSwapper extends IFormatReader, and provides an API 
     89    for changing the dimension order of a file. 
    8690- ImageTools provides a number of methods for manipulating BufferedImages and 
    8791  primitive type arrays.  In particular, there are methods to split and merge 
     
    112116file. 
    113117 
    114 A word of warning: IFormatWriter.saveImage(String, Image, boolean) accepts  
     118A word of warning: IFormatWriter.saveImage(Image, boolean) accepts  
    115119generic java.awt.Images, and converts them to a BufferedImage under the hood. 
    116120The problem is that not all formats support all types of data (e.g. JPEG 
     
    128132Following is a list of known oddities. 
    129133 
    130 o IFormatWriter accepts Image objects, and not BufferedImages; yet all writers 
    131   convert the Image to a BufferedImage.  You can still pass in a 
     134o IFormatWriter accepts Image objects (not just BufferedImages); yet all 
     135  writers convert the Image to a BufferedImage.  You can still pass in a 
    132136  BufferedImage, but you are free to pass in any Image object. 
    133137 
     
    163167 
    164168o RLE-compressed QuickTime movies will look funny if the planes are not read 
    165   in sequential order. 
     169  in sequential order, since proper decoding of a particular plane can depend 
     170  on the previous plane. 
  • trunk/loci/formats/whats-new.txt

    r2588 r2713  
     1* Added support for NRRD 
     2* Added support for Evotec Flex (requires LuraWave Java SDK with license code) 
     3* Added status event reporting to readers 
    14* Added API to toggle metadata collection 
    2 * Deprecated methods in IFormatReader that accept the 'id' parameter 
    3 * Deprecated IFormatWriter.save in favor of IFormatWriter.saveImage 
     5* Deprecated reader and writer methods that accept the 'id' parameter 
     6* Deprecated IFormatWriter.save in favor of saveImage and saveBytes 
    47* Removed "ignore color table" logic - replaced with Leica-specific solution 
    5 * Moved dimension swapping and min/max calculation logic to delegates. 
    6 * Miscellaneous bugfixes/tweaks in most readers 
     8* Moved dimension swapping and min/max calculation logic to delegates 
     9* Added support for compressed QuickTime headers 
     10* Fixed QuickTime Motion JPEG-B support 
     11* Fixed some memory issues (repeated small array allocations) 
     12* Fixed issues reading large (> 2 GB) files 
     13* Support for multiple dimensions rasterized into channels 
     14* Separate GUI logic into isolated loci.formats.gui package 
     15* Miscellaneous bugfixes and tweaks in most readers and writers 
     16* Many other bugfixes and improvements 
    717 
    8182007 Mar 16: 
Note: See TracChangeset for help on using the changeset viewer.