Public Member Functions | Protected Attributes

# GDALAsyncReader Class Reference

Class used as a session object for asynchronous requests. More...

`#include <gdal_priv.h>`

Inherited by GDALDefaultAsyncReader.

List of all members.

## Public Member Functions
GDALDataset * | GetGDALDataset ()
int | GetXOffset ()
int | GetYOffset ()
int | GetXSize ()
int | GetYSize ()
void * | GetBuffer ()
int | GetBufferXSize ()
int | GetBufferYSize ()
GDALDataType | GetBufferType ()
int | GetBandCount ()
int * | GetBandMap ()
int | GetPixelSpace ()
int | GetLineSpace ()
int | GetBandSpace ()
virtual GDALAsyncStatusType | GetNextUpdatedRegion (double dfTimeout, int *pnBufXOff, int *pnBufYOff, int *pnBufXSize, int *pnBufYSize)=0
| Get async IO update.
virtual int | LockBuffer (double dfTimeout=-1.0)
virtual void | UnlockBuffer ()
| Unlock image buffer.
## Protected Attributes
GDALDataset * | poDS
int | nXOff
int | nYOff
int | nXSize
int | nYSize
void * | pBuf
int | nBufXSize
int | nBufYSize
GDALDataType | eBufType
int | nBandCount
int * | panBandMap
int | nPixelSpace
int | nLineSpace
int | nBandSpace

## Detailed Description

Class used as a session object for asynchronous requests.

They are created with GDALDataset::BeginAsyncReader(), and destroyed with GDALDataset::EndAsyncReader().

## Member Function Documentation

GDALAsyncStatusType GDALAsyncReader::GetNextUpdatedRegion | ( | double | dfTimeout,
|  | int * | pnBufXOff,
|  | int * | pnBufYOff,
|  | int * | pnBufXSize,
|  | int * | pnBufXSize |
| ) |  |  | `[pure virtual]`

Get async IO update.

Provide an opportunity for an asynchronous IO request to update the image buffer and return an indication of the area of the buffer that has been updated.

The dfTimeout parameter can be used to wait for additional data to become available. The timeout does not limit the amount of time this method may spend actually processing available data.

The following return status are possible.

- GARIO_PENDING: No imagery was altered in the buffer, but there is still activity pending, and the application should continue to call GetNextUpdatedRegion() as time permits.
- GARIO_UPDATE: Some of the imagery has been updated, but there is still activity pending.
- GARIO_ERROR: Something has gone wrong. The asynchronous request should be ended.
- GARIO_COMPLETE: An update has occured and there is no more pending work on this request. The request should be ended and the buffer used.

Parameters:

  | dfTimeout | the number of seconds to wait for additional updates. Use -1 to wait indefinately, or zero to not wait at all if there is no data available.
  | pnBufXOff | location to return the X offset of the area of the request buffer that has been updated.
  | pnBufYOff | location to return the Y offset of the area of the request buffer that has been updated.
  | pnBufXSize | location to return the X size of the area of the request buffer that has been updated.
  | pnBufYSize | location to return the Y size of the area of the request buffer that has been updated.

Returns:
  GARIO_ status, details described above.

void GDALAsyncReader::UnlockBuffer | ( |  | ) | `[virtual]`

Unlock image buffer.

Releases a lock on the image buffer previously taken with LockBuffer().

The documentation for this class was generated from the following files:

- gdal_priv.h
- gdaldefaultasync.cpp

Generated for GDAL by 1.7.1.