cz.cuni.jagrlib.piece
Class ImagePredictor

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.Piece
          extended by cz.cuni.jagrlib.DefaultIntFunction
              extended by cz.cuni.jagrlib.piece.ImagePredictor
All Implemented Interfaces:
Breakable, IntFunction, Property, Template

public class ImagePredictor
extends DefaultIntFunction

Raster image prediction template.

Since:
0.24
See Also:
ImagePredictor.java

Nested Class Summary
protected static class ImagePredictor.PredictorType
          Implemented predictors.
 
Field Summary
protected static java.lang.String CATEGORY
          Object category.
protected  int height
          Image height (accelerator).
protected  RasterGraphics image
          Reference to the raster image (accelerator).
static int MAX_PRECINCT
          Maximal value of precinctSize.
protected  int maxValue
          Maximum value of one channel (accelerator).
protected  int[] pixel
          Support pixel array (RGBA format).
static java.lang.String PRECINCT_SIZE
           
protected  int precinctSize
          Precinct size (whatever it means - not used yet).
protected  ImagePredictor.PredictorType predictor
          Actual filter precinct.
static java.lang.String PREDICTOR_TYPE
           
static RegPiece reg
          Static registration instance for this class.
protected static java.lang.String TEMPLATE_NAME
          Object template identifier.
protected  int width
          Image width (accelerator).
 
Fields inherited from class cz.cuni.jagrlib.Piece
channels, info, pl, plugs, TEMPLATE_TYPE, userBreak
 
Fields inherited from interface cz.cuni.jagrlib.iface.Property
LOGGING, STATISTICS, TEXT_DESCRIPTION
 
Fields inherited from interface cz.cuni.jagrlib.Template
ALL_PLUGS, C_1D, C_2D, C_3D, C_ALPHA, C_BINARY, C_BREP, C_CAMERA, C_CIRCLE, C_CLIP, C_COMPRESSION, C_CURVE, C_DATA, C_DRAW, C_EDITOR, C_ELLIPSE, C_FILL, C_FILTER, C_FLOAT, C_FUNCTION, C_IMAGE, C_INTEGER, C_IO, C_LIGHT, C_LINE, C_METRIC, C_POLYGON, C_PROJECTION, C_RADIOSITY, C_RASTER, C_RENDER, C_SAMPLE, C_SCENE, C_SET, C_SOLID, C_TEXT, C_TRANSFORM, C_VECTOR, C_VIEWER, C_WORKER, CAT_EMPTY, EMPTY, IFACE, JAGRLIB, JAGRLIB2, MANIPULATOR_COMBO, MANIPULATOR_CUSTOM, MANIPULATOR_DEFAULT, MANIPULATOR_MULTILINE, PL_ALPHAMASK, PL_BITMASK, PL_CAUSTIC, PL_CODEC, PL_COLORMAP, PL_COMPARE, PL_DATA, PL_DIRECT, PL_EDITOR, PL_FILTER, PL_FUNCTION, PL_IMAGE, PL_IMPORT, PL_INPUT, PL_INTERSECTION, PL_LIGHTSOURCE, PL_ORDER, PL_OUTPUT, PL_PALETTE, PL_PHOTON, PL_PROPERTY, PL_QUANTIZER, PL_RASTER, PL_RENDER, PL_SHADOW, PL_STREAM, PL_TRANSFORM, PL_TRIGGER, PL_VOLUME, PL_WINDOW, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INTEGER, TYPE_LONG, TYPE_OBJECT, TYPE_STRING
 
Constructor Summary
ImagePredictor()
           
 
Method Summary
protected  boolean assertImage()
          Prepares all accelerators, returns true if failed.
protected  int clamp(int value)
          Clamps the given value to range 0 - maxValue.
 int g(int x, int y, int channel)
          Compute prediction for (yet not transferred) pixel [ x, y ].
 java.lang.Object get(java.lang.String key)
          Gets the given property.
protected  void readPixel(int x, int y)
          Takes image borders into account, fills pixel array.
 void set(java.lang.String key, java.lang.Object value)
          Sets the given property.
static int setTemplate(Template t, int ord)
          General-purpose registration routine.
 
Methods inherited from class cz.cuni.jagrlib.DefaultIntFunction
g, g, g, g, g, g, g, getDomain, getDomain
 
Methods inherited from class cz.cuni.jagrlib.Piece
className, connect, findPlug, findPlug, getInfo, getInterface, getInterface, getPlug, getReg, init, isCompatible, isCompatible, isConnected, logError, logWarning, myInterface, newInputPlug, newOptOutputPlug, newOutputPlug, newPlug, noTemplates, propBegin, propBounds, propDefault, propEnd, propEnum, propManipulator, propManipulator, setProgressListener, setRegStrings, setTemplateDynamic, stop
 
Methods inherited from class cz.cuni.jagrlib.DefaultProperty
booleanProperty, booleanProperty, colorDoubleProperty, colorProperty, commit, doubleProperty, doubleProperty, doubleProperty, enumProperty, floatProperty, floatProperty, floatProperty, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, set, stringProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface cz.cuni.jagrlib.iface.Property
commit
 

Field Detail

predictor

protected ImagePredictor.PredictorType predictor
Actual filter precinct.


precinctSize

protected int precinctSize
Precinct size (whatever it means - not used yet).


MAX_PRECINCT

public static final int MAX_PRECINCT
Maximal value of precinctSize.

See Also:
Constant Field Values

pixel

protected int[] pixel
Support pixel array (RGBA format).


image

protected RasterGraphics image
Reference to the raster image (accelerator).


width

protected int width
Image width (accelerator).


height

protected int height
Image height (accelerator).


maxValue

protected int maxValue
Maximum value of one channel (accelerator).


PREDICTOR_TYPE

public static final java.lang.String PREDICTOR_TYPE
See Also:
Constant Field Values

PRECINCT_SIZE

public static final java.lang.String PRECINCT_SIZE
See Also:
Constant Field Values

TEMPLATE_NAME

protected static final java.lang.String TEMPLATE_NAME
Object template identifier.

See Also:
Constant Field Values

CATEGORY

protected static final java.lang.String CATEGORY
Object category.

See Also:
Constant Field Values

reg

public static final RegPiece reg
Static registration instance for this class. Automatically initialized in class-loading time.

Constructor Detail

ImagePredictor

public ImagePredictor()
Method Detail

assertImage

protected final boolean assertImage()
Prepares all accelerators, returns true if failed.


readPixel

protected final void readPixel(int x,
                               int y)
Takes image borders into account, fills pixel array.


clamp

protected final int clamp(int value)
Clamps the given value to range 0 - maxValue.


g

public int g(int x,
             int y,
             int channel)
Compute prediction for (yet not transferred) pixel [ x, y ].

Specified by:
g in interface IntFunction
Overrides:
g in class DefaultIntFunction
Parameters:
x - Horizontal coordinate (from 0 to RasterGraphics.getWidth() - 1).
y - Vertical coordinate (from 0 to RasterGraphics.getHeight() - 1).
channel - Color-channel number: 0 .. Red, 1 .. Green, 2 .. Blue, 3 .. Alpha.
Returns:
Predicted channel value.

set

public void set(java.lang.String key,
                java.lang.Object value)
Sets the given property.

Specified by:
set in interface Property
Overrides:
set in class DefaultProperty
Parameters:
key - Key string.
value - The new value.
See Also:
Property.commit()

get

public java.lang.Object get(java.lang.String key)
Gets the given property.

Specified by:
get in interface Property
Overrides:
get in class DefaultProperty
Parameters:
key - Key string.
Returns:
The actual value or null.

setTemplate

public static int setTemplate(Template t,
                              int ord)
General-purpose registration routine. Sets all plugs, strings, etc. to the given Template.