@Override public double getPreferredDownsampleFactor(double requestedDownsample) { double[] downsamples = getPreferredDownsamples(); int ind = ServerTools.getClosestDownsampleIndex(downsamples, requestedDownsample); return downsamples[ind]; }
@Override public int getPreferredTileHeight() { // return 1024; return getMetadata().getPreferredTileHeight(); }
@Override public int getPreferredTileWidth() { // return 1024; // Some servers default to 256, however in a few cases (e.g. NDPI z-stacks) this is too small; here, we aim for a compromise choosing larger tiles return getMetadata().getPreferredTileWidth(); }
@Override public boolean usesOriginalMetadata() { return getOriginalMetadata().equals(getMetadata()); }
@Override public String getShortServerName() { return ServerTools.getDefaultShortServerName(getPath()); }
@Override public int nZSlices() { return getMetadata().getSizeZ(); }
@Override public int nTimepoints() { return getMetadata().getSizeT(); }
@Override public String getPath() { return getMetadata().getPath(); }
@Override public int nChannels() { return getMetadata().getSizeC(); // Only RGB }
@Override public double getPixelWidthMicrons() { return getMetadata().getPixelWidthMicrons(); }
@Override public double getZSpacingMicrons() { return getMetadata().getZSpacingMicrons(); }
@Override public double getMagnification() { return getMetadata().getMagnification(); }
@Override public int getWidth() { return getMetadata().getWidth(); }
@Override public TimeUnit getTimeUnit() { return getMetadata().getTimeUnit(); }
@Override public int getHeight() { return getMetadata().getHeight(); }
@Override public double getPixelHeightMicrons() { return getMetadata().getPixelHeightMicrons(); }
@Override public String getDisplayedImageName() { if (imageName == null) return getShortServerName(); return imageName; }
@Override public String getDisplayedImageName() { // TODO: Implement associated images for OpenSlide // logger.error("Image names not implemented for OpenSlide yet..."); return getShortServerName(); }
@Override public Integer getDefaultChannelColor(int channel) { return getDefaultRGBChannelColors(channel); }
@Override public Integer getDefaultChannelColor(int channel) { return getExtendedDefaultChannelColor(channel); }