• Mathieu Giraud's avatar
    core/segment.cpp: UNSEG_ONLY_V/J only when left/right e-values are good enough · 330c03e8
    Mathieu Giraud authored
    There were previously two places where the segmentation could fail with UNSEG_ONLY_V/J.
    The first one, when there is no 'good' segmentation point, was improved by 5298c86f, requiring at least 5 k-mers.
    It turned out that it was not sufficient, as reported by @flothoni in #2107.
    Contrarily to what what thought in 5298c86f, the segmentation point returned by kaa->getMaximum()
    is actually meaningful to compute some e-values, even when kaa->getMaximum().max_found is false.
    We thus now remove completely some ancient code where the thresholds were based on the number of k-mers,
    and rely solely on checkLeftRightEvaluesThreshold() to discriminate between these unsegmentation causes.
    Streamlines the code, and will fix #2107.
segment.cpp 34.6 KB