## com.sun.pdfview.decode
Class Predictor

    java.lang.Object
      com.sun.pdfview.decode.Predictor

Direct Known Subclasses:
  PNGPredictor, TIFFPredictor

    public abstract class Predictor

extends java.lang.Object

The abstract superclass of various predictor objects that undo well-known prediction algorithms.

Field Summary
`static int` `PNG`
`static int` `TIFF` well known algorithms

Constructor Summary
`protected` `Predictor(int algorithm)` Create an instance of a predictor.

Method Summary
`int` `getAlgorithm()` Get the algorithm in use
`int` `getBitsPerComponent()` Get the number of bits per color component
`int` `getColors()` Get the number of colors per sample
`int` `getColumns()` Get the number of columns
`static Predictor` `getPredictor(PDFObject params)` Get an instance of a predictor
`void` `setBitsPerComponent(int bpc)` Set the number of bits per color component
`protected void` `setColors(int colors)` Set the number of colors per sample
`void` `setColumns(int columns)` Set the number of columns
`abstract java.nio.ByteBuffer` `unpredict(java.nio.ByteBuffer imageData)` Actually perform this algorithm on decoded image data.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### TIFF

    public static final int TIFF

  well known algorithms

  See Also:
    Constant Field Values

### PNG

    public static final int PNG

See Also:
  Constant Field Values

Constructor Detail

### Predictor

    protected Predictor(int algorithm)

  Create an instance of a predictor. Use `getPredictor()` instead of this.

Method Detail

### unpredict

    public abstract java.nio.ByteBuffer unpredict(java.nio.ByteBuffer imageData)
                                           throws java.io.IOException

  Actually perform this algorithm on decoded image data. Subclasses must implement this method

  Throws:
    `java.io.IOException`

### getPredictor

    public static Predictor getPredictor(PDFObject params)
                                  throws java.io.IOException

  Get an instance of a predictor

  Parameters:
    `params` - the filter parameters
  Throws:
    `java.io.IOException`

### getAlgorithm

    public int getAlgorithm()

  Get the algorithm in use

  Returns:
    one of the known algorithm types

### getColors

    public int getColors()

  Get the number of colors per sample

### setColors

    protected void setColors(int colors)

  Set the number of colors per sample

### getBitsPerComponent

    public int getBitsPerComponent()

  Get the number of bits per color component

### setBitsPerComponent

    public void setBitsPerComponent(int bpc)

  Set the number of bits per color component

### getColumns

    public int getColumns()

  Get the number of columns

### setColumns

    public void setColumns(int columns)

  Set the number of columns