Interface ImageOp

All Superinterfaces:
Op<BufferedImage>
All Known Subinterfaces:
CropOp, GamePieceOp, RotateOp, RotateScaleOp, ScaleOp, SourceOp, SVGOp
All Known Implementing Classes:
AbstractOpImpl, AbstractTiledOpImpl, AbstractTileOpImpl, CropOpBitmapImpl, FixedScaleOpBitmapImpl, FixedScaleOpTiledBitmapImpl, GamePieceOpImpl, GridOp, ImageItem.BaseOp, ImageSourceOpBitmapImpl, Labeler.HTMLLabelOp, Labeler.LabelOp, OrthoRotateOpBitmapImpl, RotateScaleOpBitmapImpl, RotateScaleOpSVGImpl, ScaleOpBitmapImpl, ScaleOpTiledBitmapImpl, SolidColorOp, SourceOpBitmapImpl, SourceOpDiskCacheBitmapImpl, SourceOpSVGImpl, SourceOpTiledBitmapImpl, SourceTileOpBitmapImpl, SourceTileOpSVGImpl

public interface ImageOp extends Op<BufferedImage>
An abstract representation of an operation which may be applied to an {link Image}. ImageOp is the interface for all such operations. The results of all operations are memoized (using a memory-sensitive cache), so retrieving results is both fast and memory-efficient.

Warning: For efficiency reasons, no images retrieved from an ImageOp are returned defensively. That is, the Image returned is possibly the one retained internally by the ImageOp. Therefore, Images obtained from an ImageOp must not be altered, as this might interfere with image caching. If an Image obtained this way needs to be modified, copy the Image first and alter the copy.

Since:
3.1.0
Author:
Joel Uckelman