[Biojava-dev] Contributing chromatogram support to BioJava

Rhett Sutphin rhett-sutphin at uiowa.edu
Tue Mar 4 16:24:51 EST 2003


Hi,

I've developed an interface and a set of parsers and related objects 
for reading chromatogram files in Java.  I've gotten permission to 
contribute them to BioJava if the community finds them worthwhile.

Specifically, I'd be contributing:
   * A Chromatogram interface
   * A SimpleChromatogram implementation of this interface
   * An implementation of this interface that loads the chromatogram 
(and all other fields) from an SCF file
   * An implementation of this interface that loads the chromatogram 
from an ABI trace file
   * A ChromatogramFactory that examines the "magic number" of an input 
file to create a Chromatogram of the appropriate type
   * An object which encapsulates the procedure of drawing a 
chromatogram onto a Graphics2D object
   * Various support objects (e.g., exceptions)
   * A couple of command-line demo programs (Chromat2Fasta & DumpChromat)

I noticed recently that there is an ABITrace class in the programs.abi 
package that hasn't been released yet.  I think the code I'd be 
contributing is better for the standard software engineering reasons:  
abstraction and extensibility.  The Chromatogram abstraction allows SCF 
and ABI traces to be treated the same by, e.g., the the drawing object. 
  The Chromatogram abstraction also allows future format implementations 
to transparently use code that requires a Chromatogram.  But I don't 
need to explain that to you folks -- BioJava on the whole is an 
object-oriented delight.

The code needs to be refactored slightly to fit in with BioJava norms 
(for instance, I used my own flyweight nucleotide class), but I'll take 
care of that if there is interest.  Is there?

Rhett

--
Rhett Sutphin
Research Assistant (Software)
Coordinated Laboratory for Computational Genomics
   and the Center for Macular Degeneration
University of Iowa - Iowa City, IA 52242 - USA
4111 MEBRF - email: rhett-sutphin at uiowa.edu



More information about the biojava-dev mailing list