ComplexSequenceEval * ComplexSequenceEval_from_pwmDNAScore_splice(SpliceSiteScore * score) { ComplexSequenceEval * out; /* printf("Making CSE from %d\n",score);*/ out = ComplexSequenceEval_alloc(); /* shouldn't really add ones, but this is ok anyway. Yukky hack due to not understanding a bug in the window determination */ /** *STILL don't know precisely what is going on down here! ***/ /* out->left_window = ssm->offset + ssm->pre_splice_site +1; */ out->left_window =10; /* out->right_window = ssm->offset + ssm->post_splice_site +1; */ out->right_window =10; out->left_lookback =10; out->outside_score= NEGI; out->data_type = 245; /* any old key */ out->data = (void *) score; out->type = SEQUENCE_GENOMIC; out->eval_func = pwmDNA_splice_ComplexSequence_eval_func; out->score_type = CseScoreType_Bits; return out; }
ComplexSequenceEval * flat_negi(void) { ComplexSequenceEval * out; out= ComplexSequenceEval_alloc(); out->left_window = 0; out->right_window = 0; out->outside_score = NEGI; out->eval_func = flat_negi_eval; return out; }
ComplexSequenceEval * stupid_3SS(void) { ComplexSequenceEval * out; out= ComplexSequenceEval_alloc(); out->left_window = 3; out->right_window = 3; out->left_lookback = 5; out->outside_score = NEGI; out->eval_func = stupid_3SS_eval; return out; }
ComplexSequenceEval * aminoacid_number_ComplexSequenceEval(void) { ComplexSequenceEval * out; out = ComplexSequenceEval_alloc(); if (out == NULL ) { return NULL; } out->left_window = out->right_window = 0; out->eval_func = aminoacid_number_func; return out; }
ComplexSequenceEval * ComplexSequenceEval_for_scored_gt(Score * score_for_gt) { ComplexSequenceEval * out; out = ComplexSequenceEval_alloc(); out->left_window = 3; out->right_window = 7; out->left_lookback = 8; out->outside_score = NEGI; out->data = (void*) score_for_gt; out->type = SEQUENCE_GENOMIC; out->eval_func = scored_gt_eval_func; out->score_type = CseScoreType_Bits; return out; }
ComplexSequenceEval * codon64_number_ComplexSequenceEval(void) { ComplexSequenceEval * out; out = ComplexSequenceEval_alloc(); if (out == NULL ) { return NULL; } out->left_window = 2; out->right_window = 0; out->outside_score = 65; out->eval_func = codon64_number_func; return out; }
ComplexSequenceEval * ComplexSequenceEval_from_SpliceSiteModel(SpliceSiteModel * ssm) { ComplexSequenceEval * out; out = ComplexSequenceEval_alloc(); /* shouldn't really add ones, but this is ok anyway. Yukky hack due to not understanding a bug in the window determination */ /* out->left_window = ssm->offset + ssm->pre_splice_site +1; */ out->left_window = 11; /* out->right_window = ssm->offset + ssm->post_splice_site +1; */ out->right_window = 8; out->outside_score= NEGI; out->data_type = SPLICESITEMODELER_TYPE; out->data = ssm; out->type = SEQUENCE_GENOMIC; out->eval_func = SpliceSiteModeler_ComplexSequence_eval_func; return out; }