Next version of JABA
[jabaws.git] / binaries / src / fasta34 / w_mw.h
1
2 /* $Name: fa_34_26_5 $ - $Id: w_mw.h,v 1.17 2006/04/12 18:00:02 wrp Exp $ */
3
4 /* 21-July-2000 - changes for p2_complib/p2_workcomp:
5    there are now two sequence numbers; the old (worker) seqnm,
6    and a new manager (master) sequence number, m_seqnm
7 */
8
9 #ifndef BFR
10 #define BFR     300
11 #endif
12 #ifndef BFR2
13 #define BFR2    100
14 #endif
15
16 #define MAXSQL  125000
17 #define MMAXSQL 2000000
18 #ifndef MAXWRKR
19 #define MAXWRKR 64
20 #endif
21 #define MAXLSEQ 50000
22 #define DESLIN  60
23 #define NDES    100
24
25 struct qmng_str
26 {
27   int n0;       /* query sequence length */
28   int nm0;      /* number of segments */
29   int escore_flg;       /* use escores */
30   int qshuffle;         /* query shuffle */
31   int pam_pssm; /* flag for pssm/profile search */
32   int s_func;   /* for p_workcomp: func==0>simple comparison, ==1>alignments */
33   int slist;    /* number of alignments to do */
34   int seqnm;    /* query sequence number - used for identity searches */
35   char libstr[MAX_FN];
36 };
37
38 struct comstr
39 {
40   int m_seqnm;          /* sequence number */
41   int seqnm;            /* sequence number */
42   int score[3];         /* score */
43   double escore;
44   float comp;
45   float H;
46   int segnum;
47   int seglen;
48   int frame;
49   int r_score, qr_score;
50   double r_escore, qr_escore;
51 };
52
53 struct comstr2
54 {
55   int m_seqnm;          /* sequence number */
56   int seqnm;            /* sequence number */
57   int score[3];         /* score */
58   double escore;
59   int segnum;
60   int seglen;
61   int sw_score;
62
63   /* int a_len; */      /* consensus alignment length */
64   /* int min0, max0, min1, max1;
65   int nident, ngap_q, ngap_l; */ /* number of identities, gaps in q, l */
66   
67   struct a_struct aln_d;
68   float percent, gpercent;
69   int aln_code_n;
70 };
71
72 /* The message structure */
73
74 struct wrkmsg
75 {
76     char lname [80];    /* name of the library */
77     char libenv[80];    /* directory in which library resides */
78     int lb_off;         /* offset in the library */
79     int lb_stop;        /* stop position in library */
80     int lb_code;        /* continue code */
81     int lb_size;        /* library size */
82     int p_size;         /* parcel size */
83     int libfn;          /* current library being searched */
84     int stage;          /* current stage number */
85 };
86
87 struct sql
88 {
89   int n1;
90   int *n1tot_p;
91   int sfnum[10];        /* superfamily number */
92   int nsfnum;
93 #ifndef USE_FSEEKO
94   long lseek;           /* location of sequence in file */
95 #else
96   off_t lseek;
97 #endif
98   long loffset;         /* offset from the beginning of the sequence */
99   int wrkr;             /* worker that has sequence */
100   int cont;
101   char *bline;  /* descriptive line */
102 };
103
104 struct sqs
105 {
106   int n1;               /* size of library sequence */
107   unsigned char *aa1;   /* sequence data */
108 };
109
110 #include "aln_structs.h"
111
112 struct sqs2
113 {
114   int n1;               /* size of library sequence */
115   int m_seqnm;          /* location in master list */
116   unsigned char *aa1;
117   int walign_dflg[2];
118   int sw_score[2];
119   struct a_res_str a_res[2];    /* need a_res for each frame */
120 };
121
122 struct stage2_str {
123   int m_seqnm;  /* manager sequence number */
124   int seqnm;    /* worker sequence number */
125   int frame;    /* query frame */
126 };