00001 00077 #ifndef STRUCTS_H 00078 #define STRUCTS_H 00079 00080 /* -------------------------------------------------------------------------- */ 00081 00082 struct iarray { 00083 00084 int *vals; 00085 int size; 00087 } iarray; 00088 00089 /* -------------------------------------------------------------------------- */ 00090 00091 struct farray { 00092 00093 float *vals; 00094 int size; 00096 } farray; 00097 00098 /* -------------------------------------------------------------------------- */ 00099 00100 typedef struct gotoh_arguments { 00101 00102 char *cfg_file; 00103 char *db_file; 00104 char *q_file; 00105 char *res_file; 00106 char *stat_file; 00110 char *m1_file; 00113 char *m2_file; 00116 int mD; 00117 double e; 00120 int p; 00123 int out; 00134 int split; 00137 int help; 00138 int version; 00139 int verbose; 00140 float m1_seqT; 00142 float m2_seqT; 00144 float m2_strucT; 00147 float m2T; 00150 } gotoh_arguments; 00151 00152 /* -------------------------------------------------------------------------- */ 00153 00154 typedef struct gotoh_settings { 00155 00156 /* input */ 00157 char *dbase; 00158 char *query; 00159 char *res_file; 00160 char *motif1; 00163 char *motif2; 00167 /* alignment parameters / scores */ 00168 int gap_open; 00169 int gap_extend; 00170 int match; 00171 int mismatch; 00172 int inf; 00175 /* filter */ 00176 int maxdistance; 00177 double usrE; 00180 float percID; 00183 float m1_seqT; 00185 float m2_seqT; 00187 float m2_strucT; 00190 float m2T; 00192 /* output */ 00193 int output_format; 00203 char *stat_file; 00207 int verbose; 00210 } gotoh_settings; 00211 00212 /* -------------------------------------------------------------------------- */ 00213 00214 /* stores all information for one alignment */ 00215 typedef struct gotoh_aln { 00216 00217 int db_len; 00218 char *hitseq; 00219 char *queryseq; 00220 char *hitname; 00221 char *queryname; 00222 int shift; 00223 int sStart; 00224 int sEnd; 00225 int length; 00226 char strand; 00227 float alnscore; 00228 float ntfalnscore; 00229 double evalue; 00230 float percID; 00232 int mismatches; 00233 int gapopening; 00234 int qStart; 00236 int qEnd; 00241 } gotoh_aln; 00242 00243 /* -------------------------------------------------------------------------- */ 00244 00245 typedef struct gotoh_motif { 00246 00247 char *comment; 00248 char *name; 00249 int nLeft; 00250 int nRight; 00251 int len; 00252 float **stemL; 00253 float **stemR; 00254 float *minL; 00255 float *maxL; 00256 float *infoL; 00257 int *maxCL; 00260 char *consL; 00261 float *minR; 00262 float *maxR; 00263 float *infoR; 00264 int *maxCR; 00267 char *consR; 00268 int n_bp; 00269 int **basepairs; 00274 float scoreBP; 00275 float maxScore; 00278 } gotoh_motif; 00279 00280 /* -------------------------------------------------------------------------- */ 00281 00282 typedef struct gotoh_motifSingle { 00283 00284 char *name; 00285 int len; 00286 float **freq; 00287 float *min; 00288 float *max; 00289 float *info; 00290 char *maxC; 00294 } gotoh_motifSingle; 00295 00296 /* -------------------------------------------------------------------------- */ 00297 00298 typedef struct gotoh_motifCandidate { 00299 00300 char *left_seq; 00301 char *left_mseq; 00302 char *right_seq; 00303 char *right_mseq; 00304 float scoreL; 00305 float scoreL_perc; 00306 float scoreR; 00307 float scoreR_perc; 00308 float scoreBP; 00309 float scoreBP_perc; 00314 float score; 00315 float score_perc; 00319 int sL; 00320 int eL; 00321 int sR; 00322 int eR; 00323 int distance; 00325 } gotoh_motifCandidate; 00326 00327 #endif