#include <stdio.h>#include <iostream.h>#include "kzseq.h"#include <fstream.h>#include <sys/types.h>#include <sys/mman.h>#include <sys/stat.h>#include <fcntl.h>#include "psublast.h"#include "sim4.h"#include "align.h"#include "sim4b1.h"Functions | |
| static void | init_stats (sim4_stats_t *) |
| static void | cds_range (char *, int *, int *) |
| static void | add_offset_exons (Exon *, int) |
| static void | add_offset_aligns (edit_script_list *, int) |
| static void | print_align_blk (const kzseq &so1, const kzseq &so2, edit_script_list **, int, int) |
| static void | print_align_lat (const kzseq &so1, const kzseq &so2, edit_script_list **, const Exon *, int, int) |
| void | writeAlign (ostream &os, const exon *&ex, const kzseq &so1, const kzseq &so2, edit_script_list *&als, int ft, int ori, int lengthCut, int percentCut) |
| int | main (int argc, char *argv[]) |
Variables | |
| static const char | rcsid [] |
| static const char | Usage [] |
| static void add_offset_aligns | ( | edit_script_list * | aligns, | |
| int | offset | |||
| ) | [static] |
| static void add_offset_exons | ( | Exon * | exons, | |
| int | offset | |||
| ) | [static] |
| static void cds_range | ( | char * | line, | |
| int * | from, | |||
| int * | to | |||
| ) | [static] |
| static void init_stats | ( | sim4_stats_t * | st | ) | [static] |
Referenced by main().
| int main | ( | int | argc, | |
| char * | argv[] | |||
| ) |
*producing the final output ***********/
References add_offset_aligns(), add_offset_exons(), sim4Args::ali_flag, bld_table(), BWD, sim4Args::CDS_from, cds_range(), sim4Args::CDS_to, ckargs(), command, complement_exons(), kzseq::copyRevcomp(), DNA_scores(), EST_GEN, fatal(), file_type, free_align(), free_list(), free_table(), FWD, GEN_EST, sim4Args::getArg(), ifstream(), INIT, init_stats(), LINE, sim4_stats::nmatches, sim4Args::poly_flag, kzseq::polyATsize(), print_align_blk(), print_align_header(), print_align_lat(), print_exons(), print_pipmaker_exons(), readIndex(), kzseq::readSeq(), kzseq::revcomp(), sim4Args::reverse, sim4Args::S, seq1, seq2, kzseq::seq2upper(), kzseq::seqchar(), kzseq::seqhead(), kzseq::seqlen(), SIM4(), Usage, sim4Args::W, and writeAlign().
| static void print_align_blk | ( | const kzseq & | so1, | |
| const kzseq & | so2, | |||
| edit_script_list ** | Aligns, | |||
| int | file_type, | |||
| int | match_ori | |||
| ) | [static] |
References align_reverse(), ckalloc(), EST_GEN, Free_script(), FWD, edit_script_list::len1, edit_script_list::len2, edit_script_list::next_script, edit_script_list::offset1, edit_script_list::offset2, print_align(), S, S2A(), edit_script_list::score, edit_script_list::script, seq1, seq2, kzseq::seqchar(), and kzseq::seqlen().
Referenced by main().
| static void print_align_lat | ( | const kzseq & | so1, | |
| const kzseq & | so2, | |||
| edit_script_list ** | Aligns, | |||
| const Exon * | Exons, | |||
| int | file_type, | |||
| int | match_ori | |||
| ) | [static] |
References align_reverse(), ckalloc(), EST_GEN, Free_script(), FWD, IDISPLAY(), edit_script_list::len1, edit_script_list::len2, edit_script_list::next_script, edit_script_list::offset1, edit_script_list::offset2, S, S2A(), edit_script_list::script, seq1, seq2, kzseq::seqchar(), and kzseq::seqlen().
Referenced by main(), and writeAlign().
| void writeAlign | ( | ostream & | os, | |
| const exon *& | ex, | |||
| const kzseq & | so1, | |||
| const kzseq & | so2, | |||
| edit_script_list *& | als, | |||
| int | ft, | |||
| int | ori, | |||
| int | lengthCut, | |||
| int | percentCut | |||
| ) |
References BWD, FWD, print_align_lat(), kzseq::seqhead(), and exon::sumLength().
Referenced by main().
const char rcsid[] [static] |
Initial value:
"$Id: sim4main.cpp,v 1.1.1.1 2007-07-13 03:44:06 kzhou Exp $"
const char Usage[] [static] |
Initial value:
"%s seq1 seq2_db [[WXKCRDAPNBS]=]\n\n\ W - word size. (W=12)\n\ X - value for terminating word extensions. (X=12)\n\ K - MSP score threshold for the first pass. (e.g., K=16)\n\ C - MSP score threshold for the second pass. (e.g., C=12)\n\ R - direction of search; 0 - search the '+' (direct) strand only; \n\ 1 - search the '-' strand only; 2 - search both strands and \n\ report the best match. (R=2)\n\ D - bound for the range of diagonals within consecutive msps in an\n\ exon. (D=10)\n\ A - output format: exon endpoints only (A=0), alignment text (A=1),\n\ alignment in lav (block) format (A=2), or both exon endpoints\n\ and alignment text (A=3, A=4). If complement match, A=0,1,2,3\n\ give direct positions in the long sequence and complement \n\ positions in the short sequence. A=4 gives direct positions in \n\ the first sequence, regardless of the relative lengths.\n\ A=5 prints the exon and CDS coordinates (the latter, if known)\n\ in the `exon file' format required by PipMaker. To be used\n\ with full-length mRNA sequences.\n\ P - if not 0, remove poly-A tails; report coordinates in the \n\ '+' (direct) strand for complement matches; use lav alignment \n\ headers in all display options. (P=0) \n\ N - accuracy of sequences (non-zero for highly accurate). (N=0)\n\ B - if 0, dis-allow ambiguity codes (other than N and X) in the\n\ sequence data. (B=1)\n\ S - coding region specification (available only with A=5);\n\ format: S=n1..n2 \n"
Referenced by main().
1.5.6