inc/ace.h

Go to the documentation of this file.
00001 /* ace - a format written by phrap, read by consed.
00002  *
00003  * This file contains routines to read such files.
00004  * Note that though the coordinates are one based and
00005  * closed on disk, they get converted to our usual half
00006  * open zero based in memory.  */
00007 
00008 #ifndef ACE_H
00009 #define ACE_H
00010 
00011 #ifndef LINEFILE_H
00012 #include "linefile.h"
00013 #endif 
00014 
00015 #ifndef DNASEQ_H
00016 #include "dnaseq.h"
00017 #endif
00018 
00019 struct aceAS
00020 /* This contains an AS entry. */
00021     {
00022     int contigs;
00023     int reads;
00024     };
00025 
00026 struct aceCO
00027 /* This contains a CO entry. */
00028     {
00029     char *contigName;
00030     int bases;
00031     int reads;
00032     struct dnaSeq *seq;
00033     };
00034 
00035 struct aceAF
00036 /* This contains an AF entry. */
00037     {
00038     struct aceAF *next;
00039     char *readName;
00040     int startPos;
00041     };
00042 
00043 struct aceRD
00044 /* This contains an RD entry. */
00045     {
00046     struct aceRD *next;
00047     char *readName;
00048     int bases;
00049     struct dnaSeq *seq;
00050     };
00051 
00052 struct ace
00053 /* This contains information about one ace element. */
00054     {
00055     struct ace *next;
00056     struct aceAS aceAS;
00057     struct aceCO aceCO;
00058     struct aceAF *afList;
00059     struct aceRD *rdList;
00060     };
00061 
00062 void aceFree(struct ace **pEl);
00063 /* Free an ace. */
00064 
00065 void aceFreeList(struct ace **pList);
00066 /* Free a list of dynamically allocated ace's */
00067 
00068 struct ace *aceRead(struct lineFile *lf);
00069 /* Read in from .ace file and return it.
00070  * Returns NULL at EOF. */
00071 
00072 boolean aceCheck(struct ace *ace, struct lineFile *lf);
00073 /* Return FALSE if there's a problem with ace. */
00074 
00075 void aceWrite(struct ace *ace, FILE *f);
00076 /* Output ace to ace file. */
00077 
00078 #endif /* ACE_H */
00079 

Generated on Tue Dec 25 18:39:29 2007 for blat by  doxygen 1.5.2