GthPathWalker* gth_path_walker_new(const GthBacktracePath *bp, bool forward) { GthPathWalker *pw; gt_assert(bp); gt_assert(forward); /* XXX: implement reverse walking */ pw = gt_calloc(1, sizeof *pw); pw->forward = forward; pw->proteineop = gth_backtrace_path_alphatype(bp) == PROTEIN_ALPHA; pw->alignment = gth_backtrace_path_get(bp); pw->alignmentlength = gth_backtrace_path_length(bp); pw->eopptr = pw->alignment + pw->alignmentlength - 1; pw->last_eop_type = NUM_OF_EOP_TYPES; return pw; }
GthAlphatype gth_sa_alphatype(const GthSA *sa) { gt_assert(sa); return gth_backtrace_path_alphatype(sa->backtrace_path); }