| jj2000.j2k.wavelet.synthesis.CBlkWTDataSrcDec
All known Subclasses: jj2000.j2k.quantization.dequantizer.Dequantizer,
CBlkWTDataSrcDec | public interface CBlkWTDataSrcDec extends InvWTData(Code) | | This abstract class defines methods to transfer wavelet data in a
code-block by code-block basis, for the decoder side. In each call to
'getCodeBlock()' or 'getInternCodeBlock()' a new code-block is
returned. The code-blocks are returned in no specific order.
This class is the source of data, in general, for the inverse wavelet
transforms. See the 'InverseWT' class.
See Also: InvWTData See Also: WaveletTransform See Also: jj2000.j2k.quantization.dequantizer.CBlkQuantDataSrcDec See Also: InverseWT |
Method Summary | |
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 int | getFixedPoint(int c) Returns the position of the fixed point in the specified component, or
equivalently the number of fractional bits. | 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 int | getNomRangeBits(int c) Returns the number of bits, referred to as the "range bits",
corresponding to the nominal range of the data in the specified
component.
The returned value corresponds to the nominal dynamic range of the
reconstructed image data, not of the wavelet coefficients
themselves. |
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.
Parameters: c - The component for which to return the next code-block. Parameters: m - The vertical index of the code-block to return,in the specified subband. Parameters: n - The horizontal index of the code-block to return,in the specified 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 |
getFixedPoint | public int getFixedPoint(int c)(Code) | | Returns the position of the fixed point in the specified component, or
equivalently the number of fractional bits. This is the position of the
least significant integral (i.e. non-fractional) bit, which is
equivalent to the number of fractional bits. For instance, for
fixed-point values with 2 fractional bits, 2 is returned. For
floating-point data this value does not apply and 0 should be
returned. Position 0 is the position of the least significant bit in
the data.
Parameters: c - The index of the component. The position of the fixed-point, which is the same as thenumber of fractional bits. For floating-point data 0 is returned. |
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.
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 |
getNomRangeBits | public int getNomRangeBits(int c)(Code) | | Returns the number of bits, referred to as the "range bits",
corresponding to the nominal range of the data in the specified
component.
The returned value corresponds to the nominal dynamic range of the
reconstructed image data, not of the wavelet coefficients
themselves. This is because different subbands have different gains and
thus different nominal ranges. To have an idea of the nominal range in
each subband the subband analysis gain value from the subband tree
structure, returned by the 'getSubbandTree()' method, can be used. See
the 'Subband' class for more details.
If this number is b then for unsigned data the nominal range
is between 0 and 2^b-1, and for signed data it is between -2^(b-1) and
2^(b-1)-1.
Parameters: c - The index of the component The number of bits corresponding to the nominal range of thedata. See Also: Subband |
|
|