public void resetGenericStats(int template, ArithmeticDecoderStats previousStats) { int size = contextSize[template]; if (previousStats != null && previousStats.getContextSize() == size) { if (genericRegionStats.getContextSize() == size) { genericRegionStats.overwrite(previousStats); } else { genericRegionStats = previousStats.copy(); } } else { if (genericRegionStats.getContextSize() == size) { genericRegionStats.reset(); } else { genericRegionStats = new ArithmeticDecoderStats(1 << size); } } }
public void resetRefinementStats(int template, ArithmeticDecoderStats previousStats) { int size = referredToContextSize[template]; if (previousStats != null && previousStats.getContextSize() == size) { if (refinementRegionStats.getContextSize() == size) { refinementRegionStats.overwrite(previousStats); } else { refinementRegionStats = previousStats.copy(); } } else { if (refinementRegionStats.getContextSize() == size) { refinementRegionStats.reset(); } else { refinementRegionStats = new ArithmeticDecoderStats(1 << size); } } }