Class PNMImageReader

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private PNMHeader header  
      • Fields inherited from class javax.imageio.ImageReader

        availableLocales, ignoreMetadata, input, locale, minIndex, originatingProvider, progressListeners, seekForwardOnly, updateListeners, warningListeners, warningLocales
    • Constructor Summary

      Constructors 
      Constructor Description
      PNMImageReader​(javax.imageio.spi.ImageReaderSpi provider)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) static java.lang.String asASCII​(short type)  
      private java.awt.image.Raster clipRowToRect​(java.awt.image.Raster raster, java.awt.Rectangle rect, int[] bands, int xSub)  
      private java.awt.image.WritableRaster clipToRect​(java.awt.image.WritableRaster raster, java.awt.Rectangle rect, int[] bands)  
      private int[] createBandOffsets​(int numBands)  
      int getHeight​(int imageIndex)  
      javax.imageio.metadata.IIOMetadata getImageMetadata​(int imageIndex)
      Default implementation that always returns null.
      java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes​(int imageIndex)  
      javax.imageio.ImageTypeSpecifier getRawImageType​(int imageIndex)  
      int getWidth​(int imageIndex)  
      static void main​(java.lang.String[] args)  
      private void normalize​(byte[] rowData, int start, int length)  
      private void normalize​(float[] rowData)  
      private void normalize​(short[] rowData)  
      java.awt.image.BufferedImage read​(int imageIndex, javax.imageio.ImageReadParam param)  
      private static void readFully​(java.io.DataInput input, float[] floats)  
      private static void readFully​(java.io.DataInput input, short[] shorts)  
      private void readHeader()  
      private void readRowByte​(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, byte[] rowDataByte, int bitsPerSample, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)  
      private void readRowFloat​(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, float[] rowDataFloat, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)  
      private void readRowUShort​(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, short[] rowDataUShort, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)  
      protected void resetMembers()
      Resets all member variables.
      private java.io.DataInput wrapInput()  
      • Methods inherited from class javax.imageio.ImageReader

        abort, abortRequested, addIIOReadProgressListener, addIIOReadUpdateListener, addIIOReadWarningListener, canReadRaster, checkReadParamBandSettings, clearAbortRequest, computeRegions, getAspectRatio, getAvailableLocales, getDefaultReadParam, getFormatName, getImageMetadata, getInput, getLocale, getMinIndex, getNumThumbnails, getOriginatingProvider, getSourceRegion, getStreamMetadata, getThumbnailHeight, getThumbnailWidth, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, hasThumbnails, isIgnoringMetadata, isImageTiled, isRandomAccessEasy, isSeekForwardOnly, processImageComplete, processImageProgress, processImageStarted, processImageUpdate, processPassComplete, processPassStarted, processReadAborted, processSequenceComplete, processSequenceStarted, processThumbnailComplete, processThumbnailPassComplete, processThumbnailPassStarted, processThumbnailProgress, processThumbnailStarted, processThumbnailUpdate, processWarningOccurred, processWarningOccurred, read, readAll, readAll, readAsRenderedImage, readerSupportsThumbnails, readRaster, readThumbnail, readTile, readTileRaster, removeAllIIOReadProgressListeners, removeAllIIOReadUpdateListeners, removeAllIIOReadWarningListeners, removeIIOReadProgressListener, removeIIOReadUpdateListener, removeIIOReadWarningListener, setInput, setInput, setLocale
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PNMImageReader

        PNMImageReader​(javax.imageio.spi.ImageReaderSpi provider)
    • Method Detail

      • readHeader

        private void readHeader()
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • asASCII

        static java.lang.String asASCII​(short type)
      • getWidth

        public int getWidth​(int imageIndex)
                     throws java.io.IOException
        Specified by:
        getWidth in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • getHeight

        public int getHeight​(int imageIndex)
                      throws java.io.IOException
        Specified by:
        getHeight in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • getRawImageType

        public javax.imageio.ImageTypeSpecifier getRawImageType​(int imageIndex)
                                                         throws java.io.IOException
        Overrides:
        getRawImageType in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • createBandOffsets

        private int[] createBandOffsets​(int numBands)
      • getImageTypes

        public java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes​(int imageIndex)
                                                                           throws java.io.IOException
        Specified by:
        getImageTypes in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • read

        public java.awt.image.BufferedImage read​(int imageIndex,
                                                 javax.imageio.ImageReadParam param)
                                          throws java.io.IOException
        Specified by:
        read in class javax.imageio.ImageReader
        Throws:
        java.io.IOException
      • wrapInput

        private java.io.DataInput wrapInput()
                                     throws javax.imageio.IIOException
        Throws:
        javax.imageio.IIOException
      • clipRowToRect

        private java.awt.image.Raster clipRowToRect​(java.awt.image.Raster raster,
                                                    java.awt.Rectangle rect,
                                                    int[] bands,
                                                    int xSub)
      • clipToRect

        private java.awt.image.WritableRaster clipToRect​(java.awt.image.WritableRaster raster,
                                                         java.awt.Rectangle rect,
                                                         int[] bands)
      • readRowByte

        private void readRowByte​(java.awt.image.WritableRaster destRaster,
                                 java.awt.image.Raster rowRaster,
                                 byte[] rowDataByte,
                                 int bitsPerSample,
                                 int samplesPerPixel,
                                 java.io.DataInput input,
                                 int y,
                                 java.awt.Rectangle srcRegion,
                                 int xSub,
                                 int ySub)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • readRowUShort

        private void readRowUShort​(java.awt.image.WritableRaster destRaster,
                                   java.awt.image.Raster rowRaster,
                                   short[] rowDataUShort,
                                   int samplesPerPixel,
                                   java.io.DataInput input,
                                   int y,
                                   java.awt.Rectangle srcRegion,
                                   int xSub,
                                   int ySub)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • readRowFloat

        private void readRowFloat​(java.awt.image.WritableRaster destRaster,
                                  java.awt.image.Raster rowRaster,
                                  float[] rowDataFloat,
                                  int samplesPerPixel,
                                  java.io.DataInput input,
                                  int y,
                                  java.awt.Rectangle srcRegion,
                                  int xSub,
                                  int ySub)
                           throws java.io.IOException
        Throws:
        java.io.IOException
      • readFully

        private static void readFully​(java.io.DataInput input,
                                      short[] shorts)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • readFully

        private static void readFully​(java.io.DataInput input,
                                      float[] floats)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • normalize

        private void normalize​(byte[] rowData,
                               int start,
                               int length)
      • normalize

        private void normalize​(short[] rowData)
      • normalize

        private void normalize​(float[] rowData)
      • getImageMetadata

        public javax.imageio.metadata.IIOMetadata getImageMetadata​(int imageIndex)
                                                            throws java.io.IOException
        Description copied from class: ImageReaderBase
        Default implementation that always returns null.
        Overrides:
        getImageMetadata in class ImageReaderBase
        Parameters:
        imageIndex - ignored, unless overridden
        Returns:
        null, unless overridden
        Throws:
        java.io.IOException - never, unless overridden.
      • main

        public static void main​(java.lang.String[] args)
                         throws java.io.IOException
        Throws:
        java.io.IOException