Search in sources :

Example 1 with ModifiableFittedRegion

use of com.hartwig.hmftools.common.purple.region.ModifiableFittedRegion in project hmftools by hartwigmedical.

the class ExtendGermline method reduce.

@NotNull
private static CombinedRegion reduce(@NotNull final CombinedRegion parent, long start, long end) {
    assert (start >= parent.start());
    assert (end <= parent.end());
    int bafCount = 0;
    int observedTumorRatioCount = 0;
    for (FittedRegion fittedRegion : parent.regions()) {
        if (fittedRegion.start() >= start && fittedRegion.end() <= end) {
            bafCount += fittedRegion.bafCount();
            observedTumorRatioCount += fittedRegion.observedTumorRatioCount();
        }
    }
    final ModifiableFittedRegion smallerRegion = ModifiableFittedRegion.create().from(parent.region()).setStart(start).setEnd(end).setBafCount(bafCount).setObservedTumorRatioCount(observedTumorRatioCount);
    CombinedRegion result = new CombinedRegion(parent.isBafWeighted(), smallerRegion);
    result.setCopyNumberMethod(parent.copyNumberMethod());
    for (FittedRegion fittedRegion : parent.regions()) {
        if (fittedRegion.start() >= start && fittedRegion.end() <= end) {
            result.extend(fittedRegion);
        }
    }
    return result;
}
Also used : ModifiableFittedRegion(com.hartwig.hmftools.common.purple.region.ModifiableFittedRegion) FittedRegion(com.hartwig.hmftools.common.purple.region.FittedRegion) ModifiableFittedRegion(com.hartwig.hmftools.common.purple.region.ModifiableFittedRegion) NotNull(org.jetbrains.annotations.NotNull)

Aggregations

FittedRegion (com.hartwig.hmftools.common.purple.region.FittedRegion)1 ModifiableFittedRegion (com.hartwig.hmftools.common.purple.region.ModifiableFittedRegion)1 NotNull (org.jetbrains.annotations.NotNull)1