class SlidingWindowHistogramReservoir implements Reservoir {

    @Override
    public synchronized Snapshot getSnapshot() {
        if (updated || snapshotExpired(clock.tickMillis())) {
            snapshot = new HistogramSnapshot(histogram);
            updated = false;
            snapshotCreationTime = clock.tickMillis();
        }
        return snapshot;
    }

    public  SlidingWindowHistogramReservoir();
    public  SlidingWindowHistogramReservoir(SlidingWindowHistogram histogram);
    public  SlidingWindowHistogramReservoir(SlidingWindowHistogram histogram, Clock clock);

}