/** * Returns the resulting union in the form of a compact sketch * @param dstMem memory for the result (can be null) * @return compact sketch representing the union (off-heap if memory is provided) */ public ArrayOfDoublesCompactSketch getResult(final WritableMemory dstMem) { if (sketch_.getRetainedEntries() > sketch_.getNominalEntries()) { theta_ = Math.min(theta_, sketch_.getNewTheta()); } if (dstMem == null) { return new HeapArrayOfDoublesCompactSketch(sketch_, theta_); } return new DirectArrayOfDoublesCompactSketch(sketch_, theta_, dstMem); }
@Override public void trim() { if (getRetainedEntries() > getNominalEntries()) { setThetaLong(getNewTheta()); rebuild(); } }
void rebuildIfNeeded() { if (getRetainedEntries() < rebuildThreshold_) { return; } if (getCurrentCapacity() > getNominalEntries()) { setThetaLong(getNewTheta()); rebuild(); } else { rebuild(getCurrentCapacity() * getResizeFactor().getValue()); } }
/** * Returns the resulting union in the form of a compact sketch * @param dstMem memory for the result (can be null) * @return compact sketch representing the union (off-heap if memory is provided) */ public ArrayOfDoublesCompactSketch getResult(final WritableMemory dstMem) { if (sketch_.getRetainedEntries() > sketch_.getNominalEntries()) { theta_ = Math.min(theta_, sketch_.getNewTheta()); } if (dstMem == null) { return new HeapArrayOfDoublesCompactSketch(sketch_, theta_); } return new DirectArrayOfDoublesCompactSketch(sketch_, theta_, dstMem); }
@Override public void trim() { if (getRetainedEntries() > getNominalEntries()) { setThetaLong(getNewTheta()); rebuild(); } }
void rebuildIfNeeded() { if (getRetainedEntries() < rebuildThreshold_) { return; } if (getCurrentCapacity() > getNominalEntries()) { setThetaLong(getNewTheta()); rebuild(); } else { rebuild(getCurrentCapacity() * getResizeFactor().getValue()); } }