cz.cuni.jagrlib.piece
Class LinearQuantizer

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.Piece
          extended by cz.cuni.jagrlib.piece.LinearQuantizer
All Implemented Interfaces:
Breakable, PersistentParamsBinary, Property, ScalarQuantizer, Template

public class LinearQuantizer
extends Piece
implements ScalarQuantizer

Linear scalar quantizer.

See Also:
LinearQuantizer.java

Field Summary
protected static java.lang.String CATEGORY
          Object category.
protected  double coef
          Accelerator (quantization multiplier).
protected  double deCoef
          Accelerator (reconstruction multiplier).
protected  double iMax
          Maximal input value.
protected  double iMin
          Minimal input value.
protected  int levels
          Number of output levels.
static java.lang.String LEVELS
           
static java.lang.String MAX_VALUE
           
static java.lang.String MIN_VALUE
           
static RegPiece reg
          Static registration instance for this class.
protected static java.lang.String TEMPLATE_NAME
          Object template identifier.
 
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
LinearQuantizer()
           
 
Method Summary
 void commit()
          Commits all previous changes to the internal object state.
 double dequantizeDouble(int quant)
          Dequantization = reconstruction (floating-point form).
 int dequantizeInt(int quant)
          Dequantization = reconstruction (integer form).
 java.lang.Object get(java.lang.String key)
          Gets the given property.
 boolean loadData(byte[] data)
          Loads instance parameters from (previously stored) binary data.
 int quantize(double in)
          Quantization (floating-point form).
 int quantize(int in)
          Quantization (integer form).
 void set(java.lang.String key, java.lang.Object value)
          Sets the given property.
 void setBounds(double inMin, double inMax, int outLevels)
          Sets input and output bounds.
static int setTemplate(Template t, int ord)
          General-purpose registration routine.
 int setVariant(int variant)
          Set actual quantizer variant (context).
 byte[] storeData()
          Pack instance parameters into binary format.
 
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, 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
 

Field Detail

iMin

protected double iMin
Minimal input value.


iMax

protected double iMax
Maximal input value.


levels

protected int levels
Number of output levels.


coef

protected double coef
Accelerator (quantization multiplier).


deCoef

protected double deCoef
Accelerator (reconstruction multiplier).


MIN_VALUE

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

MAX_VALUE

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

LEVELS

public static final java.lang.String LEVELS
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

LinearQuantizer

public LinearQuantizer()
Method Detail

setVariant

public int setVariant(int variant)
Set actual quantizer variant (context).

Specified by:
setVariant in interface ScalarQuantizer
Parameters:
variant - Variant number (from 0).
Returns:
Old variant number.
See Also:
setBounds(double, double, int)

setBounds

public void setBounds(double inMin,
                      double inMax,
                      int outLevels)
Sets input and output bounds.

Specified by:
setBounds in interface ScalarQuantizer
Parameters:
inMin - Input value minimum.
inMax - Input value maximum.
outLevels - Number of output levels.
See Also:
setVariant(int)

quantize

public int quantize(double in)
Quantization (floating-point form).

Specified by:
quantize in interface ScalarQuantizer
Parameters:
in - Input floating-point value.
Returns:
Quantized value (or -1 if failed).
See Also:
quantize(int)

quantize

public int quantize(int in)
Quantization (integer form).

Specified by:
quantize in interface ScalarQuantizer
Parameters:
in - Input integer value.
Returns:
Quantized value (or -1 if failed).
See Also:
quantize(double)

dequantizeDouble

public double dequantizeDouble(int quant)
Dequantization = reconstruction (floating-point form).

Specified by:
dequantizeDouble in interface ScalarQuantizer
Parameters:
quant - Quantized value.
Returns:
Source (reconstructed) value.
See Also:
dequantizeInt(int), quantize(double)

dequantizeInt

public int dequantizeInt(int quant)
Dequantization = reconstruction (integer form).

Specified by:
dequantizeInt in interface ScalarQuantizer
Parameters:
quant - Quantized value.
Returns:
Source (reconstructed) value.
See Also:
dequantizeDouble(int), quantize(int)

storeData

public byte[] storeData()
Pack instance parameters into binary format.

Specified by:
storeData in interface PersistentParamsBinary
Returns:
Data array to be stored into binary stream. Can be null. The array can be shared by all method calls.
See Also:
loadData(byte[])

loadData

public boolean loadData(byte[] data)
Loads instance parameters from (previously stored) binary data.

Specified by:
loadData in interface PersistentParamsBinary
Parameters:
data - Binary data to be interpreted. Can be null.
Returns:
true if successful.
See Also:
storeData()

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.

commit

public void commit()
Commits all previous changes to the internal object state. Non-mandatory.

Specified by:
commit in interface Property
Overrides:
commit in class DefaultProperty

setTemplate

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