| java.lang.Object jj2000.j2k.wavelet.synthesis.MultiResImgDataAdapter jj2000.j2k.roi.ROIDeScaler
ROIDeScaler | public class ROIDeScaler extends MultiResImgDataAdapter implements CBlkQuantDataSrcDec(Code) | | This class takes care of the de-scaling of ROI coefficients. The de-scaler
works on a tile basis and any mask that is generated is for the current
mask only
Default implementations of the methods in 'MultiResImgData' are provided
through the 'MultiResImgDataAdapter' abstract class.
Sign magnitude representation is used (instead of two's complement) for
the output data. The most significant bit is used for the sign (0 if
positive, 1 if negative). Then the magnitude of the quantized coefficient
is stored in the next most significat bits. The most significant magnitude
bit corresponds to the most significant bit-plane and so on.
|
Method Summary | |
public static ROIDeScaler | createInstance(CBlkQuantDataSrcDec src, J2KImageReadParamJava j2krparam, DecoderSpecs decSpec) Creates a ROIDeScaler object. | public int | getCbULX() Returns the horizontal code-block partition origin. | public int | getCbULY() Returns the vertical code-block partition origin. | public DataBlk | getCodeBlock(int c, int m, int n, SubbandSyn sb, DataBlk cblk) Returns the specified code-block in the current tile for the specified
component, as a copy (see below).
The returned code-block may be progressive, which is indicated by
the 'progressive' variable of the returned 'DataBlk' object. | public DataBlk | getInternCodeBlock(int c, int m, int n, SubbandSyn sb, DataBlk cblk) Returns the specified code-block in the current tile for the specified
component (as a reference or copy).
The returned code-block may be progressive, which is indicated by
the 'progressive' variable of the returned 'DataBlk' object. | public static String[][] | getParameterInfo() Returns the parameters that are used in this class and implementing
classes. | public SubbandSyn | getSynSubbandTree(int t, int c) Returns the subband tree, for the specified tile-component. |
OPT_PREFIX | final public static char OPT_PREFIX(Code) | | The prefix for ROI decoder options: 'R'
|
ROIDeScaler | public ROIDeScaler(CBlkQuantDataSrcDec src, MaxShiftSpec mss)(Code) | | Constructor of the ROI descaler, takes EntropyDEcoder as source of data
to de-scale.
Parameters: src - The EntropyDecoder that is the source of data. Parameters: mss - The MaxShiftSpec containing the scaling values for alltile-components |
createInstance | public static ROIDeScaler createInstance(CBlkQuantDataSrcDec src, J2KImageReadParamJava j2krparam, DecoderSpecs decSpec)(Code) | | Creates a ROIDeScaler object. The information needed to create the
object is the Entropy decoder used and the parameters.
Parameters: src - The source of data that is to be descaled Parameters: pl - The parameter list (or options). Parameters: decSpec - The decoding specifications exception: IllegalArgumentException - If an error occurs while parsingthe options in 'pl' |
getCbULX | public int getCbULX()(Code) | | Returns the horizontal code-block partition origin. Allowable values
are 0 and 1, nothing else.
|
getCbULY | public int getCbULY()(Code) | | Returns the vertical code-block partition origin. Allowable values are
0 and 1, nothing else.
|
getCodeBlock | public DataBlk getCodeBlock(int c, int m, int n, SubbandSyn sb, DataBlk cblk)(Code) | | Returns the specified code-block in the current tile for the specified
component, as a copy (see below).
The returned code-block may be progressive, which is indicated by
the 'progressive' variable of the returned 'DataBlk' object. If a
code-block is progressive it means that in a later request to this
method for the same code-block it is possible to retrieve data which is
a better approximation, since meanwhile more data to decode for the
code-block could have been received. If the code-block is not
progressive then later calls to this method for the same code-block
will return the exact same data values.
The data returned by this method is always a copy of the internal
data of this object, if any, and it can be modified "in place" without
any problems after being returned. The 'offset' of the returned data is
0, and the 'scanw' is the same as the code-block width. See the
'DataBlk' class.
The 'ulx' and 'uly' members of the returned 'DataBlk' object contain
the coordinates of the top-left corner of the block, with respect to
the tile, not the subband.
Parameters: c - The component for which to return the next code-block. Parameters: m - The vertical index of the code-block to return, in thespecified subband. Parameters: n - The horizontal index of the code-block to return, in thespecified subband. Parameters: sb - The subband in which the code-block to return is. Parameters: cblk - If non-null this object will be used to return the newcode-block. If null a new one will be allocated and returned. If the"data" array of the object is non-null it will be reused, if possible,to return the data. The next code-block in the current tile for component 'n', ornull if all code-blocks for the current tile have been returned. See Also: DataBlk |
getInternCodeBlock | public DataBlk getInternCodeBlock(int c, int m, int n, SubbandSyn sb, DataBlk cblk)(Code) | | Returns the specified code-block in the current tile for the specified
component (as a reference or copy).
The returned code-block may be progressive, which is indicated by
the 'progressive' variable of the returned 'DataBlk' object. If a
code-block is progressive it means that in a later request to this
method for the same code-block it is possible to retrieve data which is
a better approximation, since meanwhile more data to decode for the
code-block could have been received. If the code-block is not
progressive then later calls to this method for the same code-block
will return the exact same data values.
The data returned by this method can be the data in the internal
buffer of this object, if any, and thus can not be modified by the
caller. The 'offset' and 'scanw' of the returned data can be
arbitrary. See the 'DataBlk' class.
The 'ulx' and 'uly' members of the returned 'DataBlk' object contain
the coordinates of the top-left corner of the block, with respect to
the tile, not the subband.
Parameters: c - The component for which to return the next code-block. Parameters: m - The vertical index of the code-block to return, in thespecified subband. Parameters: n - The horizontal index of the code-block to return, in thespecified subband. Parameters: sb - The subband in which the code-block to return is. Parameters: cblk - If non-null this object will be used to return the newcode-block. If null a new one will be allocated and returned. If the"data" array of the object is non-null it will be reused, if possible,to return the data. The requested code-block in the current tile for component 'c'. See Also: DataBlk |
getParameterInfo | public static String[][] getParameterInfo()(Code) | | Returns the parameters that are used in this class and implementing
classes. It returns a 2D String array. Each of the 1D arrays is for a
different option, and they have 3 elements. The first element is the
option name, the second one is the synopsis and the third one is a long
description of what the parameter is. The synopsis or description may
be 'null', in which case it is assumed that there is no synopsis or
description of the option, respectively. Null may be returned if no
options are supported.
the options name, their synopsis and their explanation, or nullif no options are supported. |
getSynSubbandTree | public SubbandSyn getSynSubbandTree(int t, int c)(Code) | | Returns the subband tree, for the specified tile-component. This method
returns the root element of the subband tree structure, see Subband and
SubbandSyn. The tree comprises all the available resolution levels.
The number of magnitude bits ('magBits' member variable) for each
subband is not initialized.
Parameters: t - The index of the tile, from 0 to T-1. Parameters: c - The index of the component, from 0 to C-1. The root of the tree structure. |
|
|