Example #1
0
// merge two runs and store info in first run.
void Run::merge (Run& run) { 
    // merge bucket ranges
    buckets.splice(buckets.end(), run.getBuckets());    
    totalFreq += run.getTotalFreq();
    freqBounds.first = std::min(getLoFreq(), run.getLoFreq());
    freqBounds.second = std::max(getHiFreq(), run.getHiFreq());
    
    Bounds extBounds = run.getRangeBounds();
    rangeBounds.first = std::min(extBounds.first, rangeBounds.first);
    rangeBounds.second = std::max(extBounds.second, rangeBounds.second);
}
Example #2
0
// return minimum of maximum differences.
double Run::getMinDiff (Run& run) {
    return std::min(run.getHiFreq() - getLoFreq(),
                    getHiFreq() - run.getLoFreq());
}