public abstract class ImgReader extends Object implements BlkImgDataSrc
An ImgReader behaves as an ImgData object. Whenever image data is requested through the getInternCompData() or getCompData() methods, the image data will be read (if it is not buffered) and returned. Implementing classes should not buffer large amounts of data, so as to reduce memory usage.
This class sets the image origin to (0,0). All default implementations of the methods assume this.
This class provides default implementations of many methods. These default implementations assume that there is no tiling (i.e., the only tile is the entire image), that the image origin is (0,0) in the canvas system and that there is no component subsampling (all components are the same size), but they can be overloaded by the implementating class if need be.
Modifier and Type | Field and Description |
---|---|
protected int |
h
The height of the image
|
protected int |
nc
The number of components in the image
|
protected int |
w
The width of the image
|
Constructor and Description |
---|
ImgReader() |
Modifier and Type | Method and Description |
---|---|
abstract void |
close()
Closes the underlying file or network connection from where the
image data is being read.
|
int |
getCompImgHeight(int c)
Returns the height in pixels of the specified component in the overall
image.
|
int |
getCompImgWidth(int c)
Returns the width in pixels of the specified component in the overall
image.
|
int |
getCompSubsX(int c)
Returns the component subsampling factor in the horizontal direction,
for the specified component.
|
int |
getCompSubsY(int c)
Returns the component subsampling factor in the vertical direction, for
the specified component.
|
int |
getCompULX(int c)
Returns the horizontal coordinate of the upper-left corner of the
specified component in the current tile.
|
int |
getCompULY(int c)
Returns the vertical coordinate of the upper-left corner of the
specified component in the current tile.
|
int |
getImgHeight()
Returns the overall height of the image in pixels.
|
int |
getImgULX()
Returns the horizontal coordinate of the image origin, the top-left
corner, in the canvas system, on the reference grid.
|
int |
getImgULY()
Returns the vertical coordinate of the image origin, the top-left
corner, in the canvas system, on the reference grid.
|
int |
getImgWidth()
Returns the overall width of the image in pixels.
|
int |
getNomTileHeight()
Returns the nominal tiles height
|
int |
getNomTileWidth()
Returns the nominal tiles width
|
int |
getNumComps()
Returns the number of components in the image.
|
int |
getNumTiles()
Returns the total number of tiles in the image.
|
Point |
getNumTiles(Point co)
Returns the number of tiles in the horizontal and vertical
directions.
|
Point |
getTile(Point co)
Returns the coordinates of the current tile.
|
int |
getTileCompHeight(int t,
int c)
Returns the height in pixels of the specified tile-component.
|
int |
getTileCompWidth(int t,
int c)
Returns the width in pixels of the specified tile-component.
|
int |
getTileHeight()
Returns the overall height of the current tile in pixels, assuming
there is no-tiling.
|
int |
getTileIdx()
Returns the index of the current tile, relative to a standard scan-line
order.
|
int |
getTilePartULX()
Returns the horizontal tile partition offset in the reference grid
|
int |
getTilePartULY()
Returns the vertical tile partition offset in the reference grid
|
int |
getTileWidth()
Returns the width of the current tile in pixels, assuming there is
no-tiling.
|
abstract boolean |
isOrigSigned(int c)
Returns true if the data read was originally signed in the specified
component, false if not.
|
void |
nextTile()
Advances to the next tile, in standard scan-line order (by rows then
columns).
|
void |
setTile(int x,
int y)
Changes the current tile, given the new coordinates.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getCompData, getFixedPoint, getInternCompData
getNomRangeBits
protected int w
protected int h
protected int nc
public abstract void close() throws IOException
IOException
- If an I/O error occurs.public int getTileWidth()
getTileWidth
in interface ImgData
public int getTileHeight()
getTileHeight
in interface ImgData
public int getNomTileWidth()
getNomTileWidth
in interface ImgData
public int getNomTileHeight()
getNomTileHeight
in interface ImgData
public int getImgWidth()
getImgWidth
in interface ImgData
public int getImgHeight()
getImgHeight
in interface ImgData
public int getNumComps()
getNumComps
in interface ImgData
public int getCompSubsX(int c)
getCompSubsX
in interface ImgData
c
- The index of the component (between 0 and C-1)ImgData
public int getCompSubsY(int c)
getCompSubsY
in interface ImgData
c
- The index of the component (between 0 and C-1)ImgData
public int getTileCompWidth(int t, int c)
getTileCompWidth
in interface ImgData
t
- Tile indexc
- The index of the component, from 0 to C-1.public int getTileCompHeight(int t, int c)
getTileCompHeight
in interface ImgData
t
- The tile indexc
- The index of the component, from 0 to C-1.public int getCompImgWidth(int c)
getCompImgWidth
in interface ImgData
c
- The index of the component, from 0 to C-1.public int getCompImgHeight(int c)
getCompImgHeight
in interface ImgData
c
- The index of the component, from 0 to C-1.public void setTile(int x, int y)
public void nextTile()
public Point getTile(Point co)
public int getTileIdx()
getTileIdx
in interface ImgData
public int getCompULX(int c)
getCompULX
in interface ImgData
c
- The component index.public int getCompULY(int c)
getCompULY
in interface ImgData
c
- The component index.public int getTilePartULX()
getTilePartULX
in interface ImgData
public int getTilePartULY()
getTilePartULY
in interface ImgData
public int getImgULX()
public int getImgULY()
public Point getNumTiles(Point co)
getNumTiles
in interface ImgData
co
- If not null this object is used to return the information. If
null a new one is created and returned.public int getNumTiles()
getNumTiles
in interface ImgData
public abstract boolean isOrigSigned(int c)
c
- The index of the component, from 0 to C-1.Copyright © 2015–2022 SCIFIO. All rights reserved.