package uk.ac.ox.zoo.seeg.abraid.mp.common.util.raster; import java.awt.image.Raster; import java.awt.image.WritableRaster; import java.io.IOException; /** * An interface to define a raster transformation operation. This will likely involve iterating through the pixels in * the WritableRaster and setting new values where required for the operation being implemented. * * Copyright (c) 2015 University of Oxford */ public interface RasterTransformation { /** * Perform a raster transformation operation. * @param raster The raster which should be updated. * @param referenceRasters One or more rasters which may be compared against when updating the main raster. * @throws IOException thrown if the transformation cannot be completed. */ void transform(WritableRaster raster, Raster[] referenceRasters) throws IOException; }