src/inc/seqOut.h 1.7

1.7 2009/08/21 18:39:59 angie
Added bafFlushLineNoHr for more compact side-by-side alignment display.
Index: src/inc/seqOut.h
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/inc/seqOut.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -b -B -U 1000000 -r1.6 -r1.7
--- src/inc/seqOut.h	12 May 2003 14:43:12 -0000	1.6
+++ src/inc/seqOut.h	21 Aug 2009 18:39:59 -0000	1.7
@@ -1,88 +1,91 @@
 /* seqOut - stuff to output sequences and alignments in web 
  * or ascii viewable form. */
 
 
 struct cfm
 /* Colored web character output formatter. */
     {
     int wordLen;	/* Number of characters between spaces (often 10) */
     int lineLen;        /* Number of characters between lines (often 50) */
     int inWord, inLine; /* Position in word and line. */
     bool lineNumbers;   /* True if write position at end of line. */
     bool countDown;     /* True if want numbers counting down. */
     long charCount;     /* Number of characters written total. */
     FILE *out;          /* File to write to. */
     int numOff;         /* Number to start with. */
     int color;          /* Cache last color here. */
     bool underline;	/* Underline? */
     bool bold;		/* Font in bold. */
     bool italic;	/* Italic? */
     };
 
 struct cfm *cfmNew(int wordLen, int lineLen, 
 	boolean lineNumbers, boolean countDown, FILE *out, int numOff);
 /* Set up colored sequence formatting for html. */
 
 void cfmOut(struct cfm *cfm, char c, int color);
 /* Write out a byte, and depending on color formatting extras  */
 
 void cfmOutExt(struct cfm *cfm, char c, int color, boolean underline, boolean bold, boolean italic);
 /* Write out a byte, and formatting extras  */
 
 void cfmFree(struct cfm **pCfm);
 /* Finish and free up cfm formatting job. */
 
 enum seqOutColor
 /* Symbolic color for sequence output. */
     {
     socBlack = 0,		/* Not aligning. */
     socBlue = 1,		/* Aligning. */
     socBrightBlue = 2,		/* End of an aligning block. */
     socRed = 3, 		/* Aligning UTR. */
     socOrange = 4,		/* End of an aligning UTR block. */
     };
 extern int seqOutColorLookup[];		/* Converts these to html format colors. */
 
 struct baf
 /* Block allignment formatter. */
     {
     char nChars[256];
     char hChars[256];
     int cix;
     int nLineStart;
     int hLineStart;
     int nCurPos;
     int hCurPos;
     DNA *needle, *haystack;
     int nNumOff, hNumOff;
     FILE *out;
     int lineSize;
     bool hCountDown;     /* True if want numbers counting down. */
     bool isTrans;	 /* True if haystack is translated. */
     bool nCountDown;	 /* True if want needle numbers counting down. */
     };
 
 void bafInit(struct baf *baf, DNA *needle, int nNumOff, boolean nCountDown,
 	DNA *haystack, int hNumOff, boolean hCountDown, 
 	FILE *out, int lineSize, boolean isTrans);
 /* Initialize block alignment formatter. */
 
 void bafSetAli(struct baf *baf, struct ffAli *ali);
 /* Set up block formatter around an ffAli block. */
 
 void bafSetPos(struct baf *baf, int nStart, int hStart);
 /* Set up block formatter starting at nStart/hStart. */
 
 void bafStartLine(struct baf *baf);
 /* Set up block formatter to start new line at current position. */
 
 void bafWriteLine(struct baf *baf);
 /* Write out a line of an alignment (which takes up
  * three lines on the screen. */
 
 void bafOut(struct baf *baf, char n, char h);
 /* Write a pair of character to block alignment. */
 
+void bafFlushLineNoHr(struct baf *baf);
+/* Write out alignment line if it has any characters in it (no <HR>). */
+
 void bafFlushLine(struct baf *baf);
-/* Write out alignment line if it has any characters in it. */
+/* Write out alignment line if it has any characters in it, and an <HR>. */