96a9e9c972d2e613ef3ff5839ec84c43ada535ba
markd
  Thu Nov 4 15:26:46 2010 -0700
librarized the cigar to psl code
diff --git src/inc/psl.h src/inc/psl.h
index 1624a76..a7b60f7 100644
--- src/inc/psl.h
+++ src/inc/psl.h
@@ -284,30 +284,35 @@
 		      char *tName, bioSeq *tSeq, int tStart, int tEnd, int exnStarts[], int exnEnds[], int exnCnt, FILE *f);
 /* Show protein/DNA alignment or translated DNA alignment in HTML format. */
 
 struct psl* pslNew(char *qName, unsigned qSize, int qStart, int qEnd,
                    char *tName, unsigned tSize, int tStart, int tEnd,
                    char *strand, unsigned blockSpace, unsigned opts);
 /* create a new psl with space for the specified number of blocks allocated.
  * pslGrow maybe used to expand this space if needed.  Valid options are
  * PSL_XA_FORMAT. */
 
 void pslGrow(struct psl *psl, int *blockSpacePtr);
 /* Increase memory allocated to a psl to hold more blocks.  blockSpacePtr
  * should point the the current maximum number of blocks and will be
  * updated to with the new amount of space. */
 
+struct psl* pslFromCigar(char *qName, int qSize, int qStart, int qEnd,
+                         char *tName, int tSize, int tStart, int tEnd,
+                         char* strand, char *cigar);
+/* create a PSL from a cigar formatted alignment */
+
 int pslRangeTreeOverlap(struct psl *psl, struct rbTree *rangeTree);
 /* Return amount that psl overlaps (on target side) with rangeTree. */
 
 float pslIdent(struct psl *psl);
 /* computer fraction identity */
 
 float pslQueryAligned(struct psl *psl);
 /* compute fraction of query that was aligned */
 
 INLINE unsigned pslQEnd(struct psl *psl, int blkIdx)
 /* return query end for the given block */
 {
 return psl->qStarts[blkIdx] + psl->blockSizes[blkIdx];
 }