| java.lang.Object jj2000.j2k.codestream.reader.BitstreamReaderAgent jj2000.j2k.codestream.reader.FileBitstreamReaderAgent
FileBitstreamReaderAgent | public class FileBitstreamReaderAgent extends BitstreamReaderAgent implements Markers,ProgressionType,StdEntropyCoderOptions(Code) | | This class reads the bit stream (with the help of HeaderDecoder for tile
headers and PktDecoder for packets header and body) and retrives location
of all code-block's codewords.
Note: All tile-parts headers are read by the constructor whereas packets
are processed when decoding related tile (when setTile method is called).
In parsing mode, the reader simulates a virtual layer-resolution
progressive bit stream with the same truncation points in each code-block,
whereas in truncation mode, only the first bytes are taken into account (it
behaves like if it is a real truncated codestream).
See Also: HeaderDecoder See Also: PktDecoder |
Method Summary | |
public CBlkInfo[][][][][] | getCBlkInfo() | public DecLyrdCBlk | getCodeBlock(int c, int m, int n, SubbandSyn sb, int fl, int nl, DecLyrdCBlk ccb) Returns the specified coded code-block, for the specified component, in
the current tile. | public int | getNumTileParts(int t) | public void | nextTile() Advances to the next tile, in standard scan-line order (by rows
then columns). | public void | setTile(int x, int y) Changes the current tile, given the new indexes. |
cdstreamStart | int cdstreamStart(Code) | | |
lastPosmaxPos | int lastPosmaxPos(Code) | | |
rateReached | boolean rateReached(Code) | | |
tilePartPositions | long[][] tilePartPositions(Code) | | |
tilePartStart | int tilePartStart(Code) | | |
tpostptptot | int tpostptptot(Code) | | |
FileBitstreamReaderAgent | public FileBitstreamReaderAgent(HeaderDecoder hd, RandomAccessIO ehs, DecoderSpecs decSpec, J2KImageReadParamJava j2krparam, boolean cdstrInfo, HeaderInfo hi) throws IOException(Code) | | Reads all tiles headers and keep offset of their first
packet. Finally it calls the rate allocation method.
Parameters: hd - HeaderDecoder of the codestream. Parameters: ehs - The input stream where to read bit-stream. Parameters: decSpec - The decoder specifications Parameters: j2krparam - The J2KImageReadParam instance created from thecommand-line arguments. Parameters: cdstrInfo - Whether or not to print information found incodestream. See Also: FileBitstreamReaderAgent.allocateRate |
getCBlkInfo | public CBlkInfo[][][][][] getCBlkInfo()(Code) | | Gets the reference to the CBlkInfo array
|
getCodeBlock | public DecLyrdCBlk getCodeBlock(int c, int m, int n, SubbandSyn sb, int fl, int nl, DecLyrdCBlk ccb)(Code) | | Returns the specified coded code-block, for the specified component, in
the current tile. The first layer to return is indicated by 'fl'. The
number of layers that is returned depends on 'nl' and the amount of
available data.
The argument 'fl' is to be used by subsequent calls to this method
for the same code-block. In this way supplemental data can be retrieved
at a later time. The fact that data from more than one layer can be
returned means that several packets from the same code-block, of the
same component, and the same tile, have been concatenated.
The returned compressed code-block can have its progressive
attribute set. If this attribute is set it means that more data can be
obtained by subsequent calls to this method (subject to transmission
delays, etc). If the progressive attribute is not set it means that the
returned data is all the data that can be obtained for the specified
code-block.
The compressed code-block is uniquely specified by the current tile,
the component (identified by 'c'), the subband (indentified by 'sb')
and the code-block vertical and horizontal indexes 'n' and 'm'.
The 'ulx' and 'uly' members of the returned 'DecLyrdCBlk' object
contain the coordinates of the top-left corner of the block, with
respect to the tile, not the subband.
Parameters: c - The index of the component, from 0 to N-1. 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 whic the requested code-block is. Parameters: fl - The first layer to return. Parameters: nl - The number of layers to return, if negative all availablelayers are returned, starting at 'fl'. Parameters: ccb - If not null this object is used to return the compressedcode-block. If null a new object is created and returned. If the dataarray in ccb is not null then it can be reused to return the compresseddata. The compressed code-block, with a certain number of layersdetermined by the available data and 'nl'. |
getNumTileParts | public int getNumTileParts(int t)(Code) | | Returns the number of tile-part found for a given tile
Parameters: t - Tile index |
nextTile | public void nextTile()(Code) | | Advances to the next tile, in standard scan-line order (by rows
then columns). An NoNextElementException is thrown if the
current tile is the last one (i.e. there is no next tile).
|
setTile | public void setTile(int x, int y)(Code) | | Changes the current tile, given the new indexes. An
IllegalArgumentException is thrown if the indexes do not correspond to
a valid tile.
Parameters: x - The horizontal indexes the tile. Parameters: y - The vertical indexes of the new tile. |
Methods inherited from jj2000.j2k.codestream.reader.BitstreamReaderAgent | public static BitstreamReaderAgent createInstance(RandomAccessIO in, HeaderDecoder hd, J2KImageReadParamJava j2krparam, DecoderSpecs decSpec, boolean cdstrInfo, HeaderInfo hi) throws IOException(Code)(Java Doc) public int getActualNbytes()(Code)(Java Doc) public float getActualRate()(Code)(Java Doc) final public int getCbULX()(Code)(Java Doc) public int getCbULY()(Code)(Java Doc) final public int getCompImgHeight(int c, int rl)(Code)(Java Doc) final public int getCompImgWidth(int c, int rl)(Code)(Java Doc) final public int getCompSubsX(int c)(Code)(Java Doc) public int getCompSubsY(int c)(Code)(Java Doc) public int getImgHeight(int rl)(Code)(Java Doc) public int getImgRes()(Code)(Java Doc) public int getImgULX(int rl)(Code)(Java Doc) public int getImgULY(int rl)(Code)(Java Doc) public int getImgWidth(int rl)(Code)(Java Doc) public int getNomTileHeight()(Code)(Java Doc) public int getNomTileWidth()(Code)(Java Doc) final public int getNumComps()(Code)(Java Doc) final public Point getNumTiles(Point co)(Code)(Java Doc) final public int getNumTiles()(Code)(Java Doc) final public int getPPX(int t, int c, int rl)(Code)(Java Doc) final public int getPPY(int t, int c, int rl)(Code)(Java Doc) public static String[][] getParameterInfo()(Code)(Java Doc) final public int getResULX(int c, int rl)(Code)(Java Doc) final public int getResULY(int c, int rl)(Code)(Java Doc) final public SubbandSyn getSynSubbandTree(int t, int c)(Code)(Java Doc) public int getTargetNbytes()(Code)(Java Doc) public float getTargetRate()(Code)(Java Doc) final public Point getTile(Point co)(Code)(Java Doc) final public int getTileCompHeight(int t, int c, int rl)(Code)(Java Doc) final public int getTileCompWidth(int t, int c, int rl)(Code)(Java Doc) public int getTileHeight(int rl)(Code)(Java Doc) final public int getTileIdx()(Code)(Java Doc) public int getTilePartULX()(Code)(Java Doc) public int getTilePartULY()(Code)(Java Doc) public int getTileWidth(int rl)(Code)(Java Doc) protected void initSubbandsFields(int c, SubbandSyn sb)(Code)(Java Doc) abstract public void nextTile()(Code)(Java Doc) abstract public void setTile(int x, int y)(Code)(Java Doc)
|
|
|