inc/patSpace.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * Copyright (C) 2000 Jim Kent.  This source code may be freely used         *
00003  * for personal, academic, and non-profit purposes.  Commercial use          *
00004  * permitted only by explicit agreement with Jim Kent (jim_kent@pacbell.net) *
00005  *****************************************************************************/
00006 /* patSpace - a homology finding algorithm that occurs mostly in 
00007  * pattern space (as opposed to offset space). */
00008 
00009 #ifndef PATSPACE_H
00010 #define PATSPACE_H
00011 
00012 #ifndef DNASEQ_H
00013 #include "dnaseq.h"
00014 #endif
00015 
00016 struct patSpace *makePatSpace(
00017     struct dnaSeq **seqArray,       /* Array of sequence lists. */
00018     int seqArrayCount,              /* Size of above array. */
00019     int seedSize,                   /* Alignment seed size - 10 or 11. Must match oocFileName */
00020     char *oocFileName,              /* File with tiles to filter out, may be NULL. */
00021     int minMatch,                   /* Minimum # of matching tiles.  4 is good. */
00022     int maxGap                      /* Maximum gap size - 32k is good for 
00023                                        cDNA (introns), 500 is good for DNA assembly. */
00024     );
00025 /* Allocate a pattern space and fill from sequences.  (Each element of
00026    seqArray is a list of sequences. */
00027 
00028 void freePatSpace(struct patSpace **pPatSpace);
00029 /* Free up a pattern space. */
00030 
00031 struct patClump
00032 /* This holds pattern space output - a list of homologous clumps. */
00033     {
00034     struct patClump *next;     /* Link to next in list. */
00035     int bacIx;                 /* Index of .fa file where hit occurs. */
00036     int seqIx;                 /* Index of contig where hit occurs. */
00037     struct dnaSeq *seq;        /* Sequence in which hit occurs. */
00038     int start;                 /* Start offset within sequence. */
00039     int size;                  /* Size of block within sequence. */
00040     };
00041 
00042 struct patClump *patSpaceFindOne(struct patSpace *ps, DNA *dna, int dnaSize);
00043 /* Find occurrences of DNA in patSpace. The resulting list can be
00044  * freed with slFreeList. */
00045 
00046 
00047 #endif /* PATSPACE_H */
00048 

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