| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| /** |
| * @author Rustem V. Rafikov |
| * @version $Revision: 1.3 $ |
| */ |
| |
| package javax.imageio; |
| |
| import javax.imageio.spi.ImageReaderSpi; |
| import javax.imageio.stream.ImageInputStream; |
| import javax.imageio.metadata.IIOMetadata; |
| import javax.imageio.event.IIOReadWarningListener; |
| import javax.imageio.event.IIOReadProgressListener; |
| import javax.imageio.event.IIOReadUpdateListener; |
| import java.util.Locale; |
| import java.util.List; |
| import java.util.Iterator; |
| import java.util.Set; |
| import java.io.IOException; |
| import java.awt.image.BufferedImage; |
| import java.awt.image.Raster; |
| import java.awt.image.RenderedImage; |
| import java.awt.*; |
| |
| /** |
| * The ImageReader class is an abstract class for decoding images. ImageReader |
| * objects are instantiated by the service provider interface, ImageReaderSpi |
| * class, for the specific format. ImageReaderSpi class should be registered |
| * with the IIORegistry, which uses them for format recognition and presentation |
| * of available format readers and writers. |
| * |
| * @since Android 1.0 |
| */ |
| public abstract class ImageReader { |
| |
| /** |
| * The originating provider. |
| */ |
| protected ImageReaderSpi originatingProvider; |
| |
| /** |
| * The input object such as ImageInputStream. |
| */ |
| protected Object input; |
| |
| /** |
| * The seek forward only. |
| */ |
| protected boolean seekForwardOnly; |
| |
| /** |
| * The ignore metadata flag indicates whether current input source has been |
| * marked as metadata is allowed to be ignored by setInput. |
| */ |
| protected boolean ignoreMetadata; |
| |
| /** |
| * The minimum index. |
| */ |
| protected int minIndex; |
| |
| /** |
| * The available locales. |
| */ |
| protected Locale[] availableLocales; |
| |
| /** |
| * The locale. |
| */ |
| protected Locale locale; |
| |
| /** |
| * The list of warning listeners. |
| */ |
| protected List<IIOReadWarningListener> warningListeners; |
| |
| /** |
| * The list of warning locales. |
| */ |
| protected List<Locale> warningLocales; |
| |
| /** |
| * The list of progress listeners. |
| */ |
| protected List<IIOReadProgressListener> progressListeners; |
| |
| /** |
| * The list of update listeners. |
| */ |
| protected List<IIOReadUpdateListener> updateListeners; |
| |
| /** |
| * Instantiates a new ImageReader. |
| * |
| * @param originatingProvider |
| * the ImageReaderSpi which instantiates this ImageReader. |
| */ |
| protected ImageReader(ImageReaderSpi originatingProvider) { |
| this.originatingProvider = originatingProvider; |
| } |
| |
| /** |
| * Gets the format name of this input source. |
| * |
| * @return the format name of this input source. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public String getFormatName() throws IOException { |
| return originatingProvider.getFormatNames()[0]; |
| } |
| |
| /** |
| * Gets the ImageReaderSpi which instantiated this ImageReader. |
| * |
| * @return the ImageReaderSpi. |
| */ |
| public ImageReaderSpi getOriginatingProvider() { |
| return originatingProvider; |
| } |
| |
| /** |
| * Sets the specified Object as the input source of this ImageReader. |
| * |
| * @param input |
| * the input source, it can be an ImageInputStream or other |
| * supported objects. |
| * @param seekForwardOnly |
| * indicates whether the stream must be read sequentially from |
| * its current starting point. |
| * @param ignoreMetadata |
| * parameter which indicates if metadata may be ignored during |
| * reads or not. |
| */ |
| public void setInput(Object input, boolean seekForwardOnly, boolean ignoreMetadata) { |
| if (input != null) { |
| if (!isSupported(input) && !(input instanceof ImageInputStream)) { |
| throw new IllegalArgumentException("input " + input + " is not supported"); |
| } |
| } |
| this.minIndex = 0; |
| this.seekForwardOnly = seekForwardOnly; |
| this.ignoreMetadata = ignoreMetadata; |
| this.input = input; |
| } |
| |
| /** |
| * Checks if is supported. |
| * |
| * @param input |
| * the input. |
| * @return true, if is supported. |
| */ |
| private boolean isSupported(Object input) { |
| ImageReaderSpi spi = getOriginatingProvider(); |
| if (null != spi) { |
| Class[] outTypes = spi.getInputTypes(); |
| for (Class<?> element : outTypes) { |
| if (element.isInstance(input)) { |
| return true; |
| } |
| } |
| } |
| return false; |
| } |
| |
| /** |
| * Sets the specified Object as the input source of this ImageReader. |
| * Metadata is not ignored. |
| * |
| * @param input |
| * the input source, it can be an ImageInputStream or other |
| * supported objects. |
| * @param seekForwardOnly |
| * indicates whether the stream must be read sequentially from |
| * its current starting point. |
| */ |
| public void setInput(Object input, boolean seekForwardOnly) { |
| setInput(input, seekForwardOnly, false); |
| } |
| |
| /** |
| * Sets the specified Object as the input source of this ImageReader. |
| * Metadata is not ignored and forward seeking is not required. |
| * |
| * @param input |
| * the input source, it can be ImageInputStream or other objects. |
| */ |
| public void setInput(Object input) { |
| setInput(input, false, false); |
| } |
| |
| /** |
| * Gets the input source object of this ImageReader, or returns null. |
| * |
| * @return the input source object such as ImageInputStream, or null. |
| */ |
| public Object getInput() { |
| return input; |
| } |
| |
| /** |
| * Checks if the input source supports only forward reading, or not. |
| * |
| * @return true, if the input source supports only forward reading, false |
| * otherwise. |
| */ |
| public boolean isSeekForwardOnly() { |
| return seekForwardOnly; |
| } |
| |
| /** |
| * Returns true if the current input source allows to metadata to be ignored |
| * by passing true as the ignoreMetadata argument to the setInput method. |
| * |
| * @return true, if the current input source allows to metadata to be |
| * ignored by passing true as the ignoreMetadata argument to the |
| * setInput method. |
| */ |
| public boolean isIgnoringMetadata() { |
| return ignoreMetadata; |
| } |
| |
| /** |
| * Gets the minimum valid index for reading an image, thumbnail, or image |
| * metadata. |
| * |
| * @return the minimum valid index for reading an image, thumbnail, or image |
| * metadata. |
| */ |
| public int getMinIndex() { |
| return minIndex; |
| } |
| |
| /** |
| * Gets the available locales. |
| * |
| * @return an array of the available locales. |
| */ |
| public Locale[] getAvailableLocales() { |
| return availableLocales; |
| } |
| |
| /** |
| * Sets the locale to this ImageReader. |
| * |
| * @param locale |
| * the Locale. |
| */ |
| public void setLocale(Locale locale) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Gets the locale of this ImageReader. |
| * |
| * @return the locale of this ImageReader. |
| */ |
| public Locale getLocale() { |
| return locale; |
| } |
| |
| /** |
| * Gets the number of images available in the current input source. |
| * |
| * @param allowSearch |
| * the parameter which indicates what a search is required; if |
| * false, the reader may return -1 without searching. |
| * @return the number of images. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract int getNumImages(boolean allowSearch) throws IOException; |
| |
| /** |
| * Gets the width of the specified image in input source. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return the width in pixels. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract int getWidth(int imageIndex) throws IOException; |
| |
| /** |
| * Gets the height of the specified image in input source. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return the height in pixels. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract int getHeight(int imageIndex) throws IOException; |
| |
| /** |
| * Checks if the storage format of the specified image places an impediment |
| * on random pixels access or not. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return true, if the storage format of the specified image places an |
| * impediment on random pixels access, false otherwise. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public boolean isRandomAccessEasy(int imageIndex) throws IOException { |
| return false; // def |
| } |
| |
| /** |
| * Gets the aspect ratio (width devided by height) of the image. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return the aspect ratio of the image. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public float getAspectRatio(int imageIndex) throws IOException { |
| return (float)getWidth(imageIndex) / getHeight(imageIndex); |
| } |
| |
| /** |
| * Gets an ImageTypeSpecifier which indicates the type of the specified |
| * image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the ImageTypeSpecifier. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public ImageTypeSpecifier getRawImageType(int imageIndex) throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Gets an Iterator of ImageTypeSpecifier objects which are associated with |
| * image types that may be used when decoding specified image. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return an Iterator of ImageTypeSpecifier objects. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex) throws IOException; |
| |
| /** |
| * Gets the default ImageReadParam object. |
| * |
| * @return the ImageReadParam object. |
| */ |
| public ImageReadParam getDefaultReadParam() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Gets an IIOMetadata object for this input source. |
| * |
| * @return the IIOMetadata. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract IIOMetadata getStreamMetadata() throws IOException; |
| |
| /** |
| * Gets an IIOMetadata object for this input source. |
| * |
| * @param formatName |
| * the desired metadata format to be used in the returned |
| * IIOMetadata object. |
| * @param nodeNames |
| * the node names of the document. |
| * @return the IIOMetadata. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public IIOMetadata getStreamMetadata(String formatName, Set<String> nodeNames) |
| throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Gets the image metadata of the specified image in input source. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return the IIOMetadata. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract IIOMetadata getImageMetadata(int imageIndex) throws IOException; |
| |
| /** |
| * Gets the image metadata of the specified image input source. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param formatName |
| * the desired metadata format to be used in the returned |
| * IIOMetadata object. |
| * @param nodeNames |
| * the node names which can be contained in the document. |
| * @return the IIOMetadata. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public IIOMetadata getImageMetadata(int imageIndex, String formatName, Set<String> nodeNames) |
| throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Reads the specified image and returns it as a BufferedImage using the |
| * default ImageReadParam. |
| * |
| * @param imageIndex |
| * the image index. |
| * @return the BufferedImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public BufferedImage read(int imageIndex) throws IOException { |
| return read(imageIndex, null); |
| } |
| |
| /** |
| * Reads the specified image and returns it as a BufferedImage using the |
| * specified ImageReadParam. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param param |
| * the ImageReadParam. |
| * @return the BufferedImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public abstract BufferedImage read(int imageIndex, ImageReadParam param) throws IOException; |
| |
| /** |
| * Reads the specified image and returns an IIOImage with this image, |
| * thumbnails, and metadata for this image, using the specified |
| * ImageReadParam. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param param |
| * the ImageReadParam. |
| * @return the IIOImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public IIOImage readAll(int imageIndex, ImageReadParam param) throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Returns an Iterator of IIOImages from the input source. |
| * |
| * @param params |
| * the Iterator of ImageReadParam objects. |
| * @return the iterator of IIOImages. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public Iterator<IIOImage> readAll(Iterator<? extends ImageReadParam> params) throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Checks whether or not this plug-in supports reading a Raster. |
| * |
| * @return true, if this plug-in supports reading a Raster, false otherwise. |
| */ |
| public boolean canReadRaster() { |
| return false; // def |
| } |
| |
| /** |
| * Reads a new Raster object which contains the raw pixel data from the |
| * image. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param param |
| * the ImageReadParam. |
| * @return the Raster. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public Raster readRaster(int imageIndex, ImageReadParam param) throws IOException { |
| throw new UnsupportedOperationException("Unsupported"); |
| } |
| |
| /** |
| * Checks if the specified image has tiles or not. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return true, if the specified image has tiles, false otherwise. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public boolean isImageTiled(int imageIndex) throws IOException { |
| return false; // def |
| } |
| |
| /** |
| * Gets the tile width in the specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the tile width. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getTileWidth(int imageIndex) throws IOException { |
| return getWidth(imageIndex); // def |
| } |
| |
| /** |
| * Gets the tile height in the specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the tile height. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getTileHeight(int imageIndex) throws IOException { |
| return getHeight(imageIndex); // def |
| } |
| |
| /** |
| * Gets the X coordinate of the upper left corner of the tile grid in the |
| * specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the X coordinate of the upper left corner of the tile grid. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getTileGridXOffset(int imageIndex) throws IOException { |
| return 0; // def |
| } |
| |
| /** |
| * Gets the Y coordinate of the upper left corner of the tile grid in the |
| * specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the Y coordinate of the upper left corner of the tile grid. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getTileGridYOffset(int imageIndex) throws IOException { |
| return 0; // def |
| } |
| |
| /** |
| * Reads the tile specified by the tileX and tileY parameters of the |
| * specified image and returns it as a BufferedImage. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param tileX |
| * the X index of tile. |
| * @param tileY |
| * the Y index of tile. |
| * @return the BufferedImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public BufferedImage readTile(int imageIndex, int tileX, int tileY) throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Reads the tile specified by the tileX and tileY parameters of the |
| * specified image and returns it as a Raster. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param tileX |
| * the X index of tile. |
| * @param tileY |
| * the Y index of tile. |
| * @return the Raster. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public Raster readTileRaster(int imageIndex, int tileX, int tileY) throws IOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Reads the specified image using the specified ImageReadParam and returns |
| * it as a RenderedImage. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param param |
| * the ImageReadParam. |
| * @return the RenderedImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public RenderedImage readAsRenderedImage(int imageIndex, ImageReadParam param) |
| throws IOException { |
| return read(imageIndex, param); |
| } |
| |
| /** |
| * Returns true if the image format supported by this reader supports |
| * thumbnail preview images. |
| * |
| * @return true, if the image format supported by this reader supports |
| * thumbnail preview images, false otherwise. |
| */ |
| public boolean readerSupportsThumbnails() { |
| return false; // def |
| } |
| |
| /** |
| * Checks if the specified image has thumbnails or not. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return true, if the specified image has thumbnails, false otherwise. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public boolean hasThumbnails(int imageIndex) throws IOException { |
| return getNumThumbnails(imageIndex) > 0; // def |
| } |
| |
| /** |
| * Gets the number of thumbnails for the specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @return the number of thumbnails. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getNumThumbnails(int imageIndex) throws IOException { |
| return 0; // def |
| } |
| |
| /** |
| * Gets the width of the specified thumbnail for the specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @param thumbnailIndex |
| * the thumbnail's index. |
| * @return the thumbnail width. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getThumbnailWidth(int imageIndex, int thumbnailIndex) throws IOException { |
| return readThumbnail(imageIndex, thumbnailIndex).getWidth(); // def |
| } |
| |
| /** |
| * Gets the height of the specified thumbnail for the specified image. |
| * |
| * @param imageIndex |
| * the image's index. |
| * @param thumbnailIndex |
| * the thumbnail's index. |
| * @return the thumbnail height. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public int getThumbnailHeight(int imageIndex, int thumbnailIndex) throws IOException { |
| return readThumbnail(imageIndex, thumbnailIndex).getHeight(); // def |
| } |
| |
| /** |
| * Reads the thumbnail image for the specified image as a BufferedImage. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param thumbnailIndex |
| * the thumbnail index. |
| * @return the BufferedImage. |
| * @throws IOException |
| * if an I/O exception has occurred. |
| */ |
| public BufferedImage readThumbnail(int imageIndex, int thumbnailIndex) throws IOException { |
| throw new UnsupportedOperationException("Unsupported"); // def |
| } |
| |
| /** |
| * Requests an abort operation for current reading operation. |
| */ |
| public void abort() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Checks whether or not a request to abort the current read operation has |
| * been made successfully. |
| * |
| * @return true, if the request to abort the current read operation has been |
| * made successfully, false otherwise. |
| */ |
| protected boolean abortRequested() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Clears all previous abort request, and abortRequested returns false after |
| * calling this method. |
| */ |
| protected void clearAbortRequest() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Adds the IIOReadWarningListener. |
| * |
| * @param listener |
| * the IIOReadWarningListener. |
| */ |
| public void addIIOReadWarningListener(IIOReadWarningListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes the specified IIOReadWarningListener. |
| * |
| * @param listener |
| * the IIOReadWarningListener to be removed. |
| */ |
| public void removeIIOReadWarningListener(IIOReadWarningListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes all registered IIOReadWarningListeners. |
| */ |
| public void removeAllIIOReadWarningListeners() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Adds the IIOReadProgressListener. |
| * |
| * @param listener |
| * the IIOReadProgressListener. |
| */ |
| public void addIIOReadProgressListener(IIOReadProgressListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes the specified IIOReadProgressListener. |
| * |
| * @param listener |
| * the IIOReadProgressListener to be removed. |
| */ |
| public void removeIIOReadProgressListener(IIOReadProgressListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes registered IIOReadProgressListeners. |
| */ |
| public void removeAllIIOReadProgressListeners() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Adds the IIOReadUpdateListener. |
| * |
| * @param listener |
| * the IIOReadUpdateListener. |
| */ |
| public void addIIOReadUpdateListener(IIOReadUpdateListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes the specified IIOReadUpdateListener. |
| * |
| * @param listener |
| * the IIOReadUpdateListener to be removed. |
| */ |
| public void removeIIOReadUpdateListener(IIOReadUpdateListener listener) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Removes registered IIOReadUpdateListeners. |
| */ |
| public void removeAllIIOReadUpdateListeners() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the start of an sequence of image reads by calling the |
| * sequenceStarted method on all registered IIOReadProgressListeners. |
| * |
| * @param minIndex |
| * the minimum index. |
| */ |
| protected void processSequenceStarted(int minIndex) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the completion of an sequence of image reads by calling |
| * sequenceComplete method on all registered IIOReadProgressListeners. |
| */ |
| protected void processSequenceComplete() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the start of an image read by calling the imageStarted method |
| * on all registered IIOReadProgressListeners. |
| * |
| * @param imageIndex |
| * the image index. |
| */ |
| protected void processImageStarted(int imageIndex) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the current percentage of image completion by calling the |
| * imageProgress method on all registered IIOReadProgressListeners. |
| * |
| * @param percentageDone |
| * the percentage done. |
| */ |
| protected void processImageProgress(float percentageDone) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes image completion by calling the imageComplete method on all |
| * registered IIOReadProgressListeners. |
| */ |
| protected void processImageComplete() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the start of a thumbnail read by calling the thumbnailStarted |
| * method on all registered IIOReadProgressListeners. |
| * |
| * @param imageIndex |
| * the image index. |
| * @param thumbnailIndex |
| * the thumbnail index. |
| */ |
| protected void processThumbnailStarted(int imageIndex, int thumbnailIndex) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the current percentage of thumbnail completion by calling the |
| * thumbnailProgress method on all registered IIOReadProgressListeners. |
| * |
| * @param percentageDone |
| * the percentage done. |
| */ |
| protected void processThumbnailProgress(float percentageDone) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the completion of a thumbnail read by calling the |
| * thumbnailComplete method on all registered IIOReadProgressListeners. |
| */ |
| protected void processThumbnailComplete() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes a read aborted event by calling the readAborted method on all |
| * registered IIOReadProgressListeners. |
| */ |
| protected void processReadAborted() { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the beginning of a progressive pass by calling the passStarted |
| * method on all registered IIOReadUpdateListeners. |
| * |
| * @param theImage |
| * the image to be updated. |
| * @param pass |
| * the current pass index. |
| * @param minPass |
| * the minimum pass index. |
| * @param maxPass |
| * the maximum pass index. |
| * @param minX |
| * the X coordinate of of the upper left pixel. |
| * @param minY |
| * the Y coordinate of of the upper left pixel. |
| * @param periodX |
| * the horizontal separation between pixels. |
| * @param periodY |
| * the vertical separation between pixels. |
| * @param bands |
| * the number of affected bands. |
| */ |
| protected void processPassStarted(BufferedImage theImage, int pass, int minPass, int maxPass, |
| int minX, int minY, int periodX, int periodY, int[] bands) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the update of a set of samples by calling the imageUpdate |
| * method on all registered IIOReadUpdateListeners. |
| * |
| * @param theImage |
| * the image to be updated. |
| * @param minX |
| * the X coordinate of the upper left pixel. |
| * @param minY |
| * the Y coordinate of the upper left pixel. |
| * @param width |
| * the width of updated area. |
| * @param height |
| * the height of updated area. |
| * @param periodX |
| * the horizontal separation between pixels. |
| * @param periodY |
| * the vertical separation between pixels. |
| * @param bands |
| * the number of affected bands. |
| */ |
| protected void processImageUpdate(BufferedImage theImage, int minX, int minY, int width, |
| int height, int periodX, int periodY, int[] bands) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the end of a progressive pass by calling passComplete method of |
| * registered IIOReadUpdateListeners. |
| * |
| * @param theImage |
| * the image to be updated. |
| */ |
| protected void processPassComplete(BufferedImage theImage) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the beginning of a thumbnail progressive pass by calling the |
| * thumbnailPassStarted method on all registered IIOReadUpdateListeners. |
| * |
| * @param theThumbnail |
| * the thumbnail to be updated. |
| * @param pass |
| * the current pass index. |
| * @param minPass |
| * the minimum pass index. |
| * @param maxPass |
| * the maximum pass index. |
| * @param minX |
| * the X coordinate of the upper left pixel. |
| * @param minY |
| * the Y coordinate of the upper left pixel. |
| * @param periodX |
| * the horizontal separation between pixels. |
| * @param periodY |
| * the vertical separation between pixels. |
| * @param bands |
| * the number of affected bands. |
| */ |
| protected void processThumbnailPassStarted(BufferedImage theThumbnail, int pass, int minPass, |
| int maxPass, int minX, int minY, int periodX, int periodY, int[] bands) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the update of a set of samples in a thumbnail image by calling |
| * the thumbnailUpdate method on all registered IIOReadUpdateListeners. |
| * |
| * @param theThumbnail |
| * the thumbnail to be updated. |
| * @param minX |
| * the X coordinate of the upper left pixel. |
| * @param minY |
| * the Y coordinate of the upper left pixel. |
| * @param width |
| * the total width of the updated area. |
| * @param height |
| * the total height of the updated area. |
| * @param periodX |
| * the horizontal separation between pixels. |
| * @param periodY |
| * the vertical separation between pixels. |
| * @param bands |
| * the number of affected bands. |
| */ |
| protected void processThumbnailUpdate(BufferedImage theThumbnail, int minX, int minY, |
| int width, int height, int periodX, int periodY, int[] bands) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes the end of a thumbnail progressive pass by calling the |
| * thumbnailPassComplete method on all registered IIOReadUpdateListeners. |
| * |
| * @param theThumbnail |
| * the thumbnail to be updated. |
| */ |
| protected void processThumbnailPassComplete(BufferedImage theThumbnail) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes a warning message by calling warningOccurred method of |
| * registered IIOReadWarningListeners. |
| * |
| * @param warning |
| * the warning. |
| */ |
| protected void processWarningOccurred(String warning) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Processes a warning by calling the warningOccurred method of on all |
| * registered IIOReadWarningListeners. |
| * |
| * @param baseName |
| * the base name of ResourceBundles. |
| * @param keyword |
| * the keyword to index the warning among ResourceBundles. |
| */ |
| protected void processWarningOccurred(String baseName, String keyword) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Resets this ImageReader. |
| */ |
| public void reset() { |
| // def |
| setInput(null, false); |
| setLocale(null); |
| removeAllIIOReadUpdateListeners(); |
| removeAllIIOReadWarningListeners(); |
| removeAllIIOReadProgressListeners(); |
| clearAbortRequest(); |
| } |
| |
| /** |
| * Disposes of any resources. |
| */ |
| public void dispose() { |
| // do nothing by def |
| } |
| |
| /** |
| * Gets the region of source image that should be read with the specified |
| * width, height and ImageReadParam. |
| * |
| * @param param |
| * the ImageReadParam object, or null. |
| * @param srcWidth |
| * the source image's width. |
| * @param srcHeight |
| * the source image's height. |
| * @return the Rectangle of source region. |
| */ |
| protected static Rectangle getSourceRegion(ImageReadParam param, int srcWidth, int srcHeight) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Computes the specified source region and the specified destination region |
| * with the specified the width and height of the source image, an optional |
| * destination image, and an ImageReadParam. |
| * |
| * @param param |
| * the an ImageReadParam object, or null. |
| * @param srcWidth |
| * the source image's width. |
| * @param srcHeight |
| * the source image's height. |
| * @param image |
| * the destination image. |
| * @param srcRegion |
| * the source region. |
| * @param destRegion |
| * the destination region. |
| */ |
| protected static void computeRegions(ImageReadParam param, int srcWidth, int srcHeight, |
| BufferedImage image, Rectangle srcRegion, Rectangle destRegion) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Checks the validity of the source and destination band and is called when |
| * the reader knows the number of bands of the source image and the number |
| * of bands of the destination image. |
| * |
| * @param param |
| * the ImageReadParam for reading the Image. |
| * @param numSrcBands |
| * the number of bands in the source. |
| * @param numDstBands |
| * the number of bands in the destination. |
| */ |
| protected static void checkReadParamBandSettings(ImageReadParam param, int numSrcBands, |
| int numDstBands) { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| |
| /** |
| * Gets the destination image where the decoded data is written. |
| * |
| * @param param |
| * the ImageReadParam. |
| * @param imageTypes |
| * the iterator of ImageTypeSpecifier objects. |
| * @param width |
| * the width of the image being decoded. |
| * @param height |
| * the height of the image being decoded. |
| * @return the BufferedImage where decoded pixels should be written. |
| * @throws IIOException |
| * the IIOException is thrown if there is no suitable |
| * ImageTypeSpecifier. |
| */ |
| protected static BufferedImage getDestination(ImageReadParam param, |
| Iterator<ImageTypeSpecifier> imageTypes, int width, int height) throws IIOException { |
| throw new UnsupportedOperationException("Not implemented yet"); |
| } |
| } |