@Override public Integer getDefaultChannelColor(int channel) { return getDefaultRGBChannelColors(channel); }
@Override public File getFile() { File file = new File(getPath()); if (file.exists()) return file; return null; }
@Override public String getDisplayedImageName() { // TODO: Implement associated images for OpenSlide // logger.error("Image names not implemented for OpenSlide yet..."); return getShortServerName(); }
Rectangle region = AwtTools.getBounds(request); if (region == null) { region = new Rectangle(0, 0, getWidth(), getHeight()); int level = ServerTools.getClosestDownsampleIndex(getPreferredDownsamples(), downsampleFactor); double downsample = downsamples[level]; int levelWidth = (int)(region.width / downsample + .5);
int tileWidth = (int)readNumericPropertyOrDefault(properties, "openslide.level[0].tile-width", -1); int tileHeight = (int)readNumericPropertyOrDefault(properties, "openslide.level[0].tile-height", -1); double pixelWidth = readNumericPropertyOrDefault(properties, "openslide.mpp-x", Double.NaN); double pixelHeight = readNumericPropertyOrDefault(properties, "openslide.mpp-y", Double.NaN); double magnification = readNumericPropertyOrDefault(properties, "openslide.objective-power", Double.NaN); logger.info("Test reading thumbnail with openslide: passed (" + getBufferedThumbnail(200, 200, 0).toString() + ")");
@Override public ImageServer<BufferedImage> buildServer(String path) { if (openslideUnavailable) { logger.debug("OpenSlide is unavailable - will be skipped"); return null; } try { return new OpenslideImageServer(path); } catch (UnsatisfiedLinkError e) { logger.error("Could not load OpenSlide native library", e); // Log that we couldn't create the link openslideUnavailable = true; } catch (Exception e) { logger.warn("Unable to open {} with OpenSlide: {}", path, e.getLocalizedMessage()); } return null; }
@Override public PathImage<BufferedImage> readRegion(RegionRequest request) { BufferedImage img = readBufferedImage(request); if (img == null) return null; return new PathBufferedImage(this, request, img); }