Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

SDTSRasterReader Class Reference

#include <sdts_al.h>

List of all members.

Public Methods

int GetRasterType ()
int GetTransform (double *)
int GetMinMax (double *pdfMin, double *pdfMax, double dfNoData)
int GetXSize ()
int GetYSize ()
int GetBlockXSize ()
int GetBlockYSize ()
int GetBlock (int nXOffset, int nYOffset, void *pData)


Detailed Description

Class for reading raster data from a raster layer.

This class is somewhat unique amoung the reader classes in that it isn't derived from SDTSIndexedFeature, and it doesn't return "features". Instead it is used to read raster blocks, in the natural block size of the dataset.


Member Function Documentation

int SDTSRasterReader::GetBlock int    nXOffset,
int    nYOffset,
void *    pData
 

Read a block of raster data from the file.

Parameters:
nXOffset  X block offset into the file. Normally zero for scanline organized raster files.
nYOffset  Y block offset into the file. Normally the scanline offset from top of raster for scanline organized raster files.
pData  pointer to GInt16 (signed short) buffer of data into which to read the raster.
Returns:
TRUE on success and FALSE on error.

int SDTSRasterReader::GetBlockXSize   [inline]
 

Fetch the width of a source block (usually same as raster width).

int SDTSRasterReader::GetBlockYSize   [inline]
 

Fetch the height of a source block (usually one).

int SDTSRasterReader::GetMinMax double *    pdfMin,
double *    pdfMax,
double    dfNoData
 

Fetch the minimum and maximum raster values that occur in the file.

Note this operation current results in a scan of the entire file.

Parameters:
pdfMin  variable in which the minimum value encountered is returned.
pdfMax  variable in which the maximum value encountered is returned.
dfNoData  a value to ignore when computing min/max, defaults to -32766.
Returns:
TRUE on success, or FALSE if an error occurs.

int SDTSRasterReader::GetRasterType  
 

Fetch the pixel data type.

Returns one of SDTS_RT_INT16 (1) or SDTS_RT_FLOAT32 (6) indicating the type of buffer that should be passed to GetBlock().

int SDTSRasterReader::GetTransform double *    padfTransformOut
 

Fetch the transformation between pixel/line coordinates and georeferenced coordinates.

Parameters:
padfTransformOut  pointer to an array of six doubles which will be filled with the georeferencing transform.
Returns:
TRUE is returned, indicating success.
The padfTransformOut array consists of six values. The pixel/line coordinate (Xp,Yp) can be related to a georeferenced coordinate (Xg,Yg) or (Easting, Northing).

  Xg = padfTransformOut[0] + Xp * padfTransform[1] + Yp * padfTransform[2]
  Yg = padfTransformOut[3] + Xp * padfTransform[4] + Yp * padfTransform[5]
  

In other words, for a north up image the top left corner of the top left pixel is at georeferenced coordinate (padfTransform[0],padfTransform[3]) the pixel width is padfTransform[1], the pixel height is padfTransform[5] and padfTransform[2] and padfTransform[4] will be zero.

int SDTSRasterReader::GetXSize   [inline]
 

Fetch the raster width.

Returns:
the width in pixels.

int SDTSRasterReader::GetYSize   [inline]
 

Fetch the raster height.

Returns:
the height in pixels.


The documentation for this class was generated from the following files:
Generated on Mon Oct 6 16:31:38 2003 for SDTS_AL by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002