Changes between Version 39 and Version 40 of rfc24_progressive_data_support


Ignore:
Timestamp:
Aug 28, 2008, 1:57:17 PM (16 years ago)
Author:
normanb
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • rfc24_progressive_data_support

    v39 v40  
    3939Each GDALAsyncRasterIOMessage will be small, it only contains the data for the currently requested window at a particular resolution level. These requests are usually proportional, i.e small window implies high resolution, large window implies low resolution.
    4040
     41=== Sequence of Events ===
     42
     43[[Image(sequence.png)]]
     44
     45  1. GDALOpen calls Open(Xxx) on all registered drivers with a jpip:// parameter and the first driver that returns a response is the format driver for that user.
     46  1. Streaming image servers are usually session based so that the server knows which data has already been sent to the client.
     47  1. ProgressiveRasterIO requests a region of the image from the driver. ''In the specific case of JPIP, the dimensions of the input buffer, bufXSize, bufYSize and the region Xoff, yOff, xSize, ySize are used to calculate the best resolution level and the corresponding fsiz and rsiz parameters to the server.  i.e. bufXSize and bufYSize are the desirable screen size, and the region size is at the base resolution of the image.''
     48  1. Check whether we need to stop making requests to the server.
     49  1. In response to the ProgressiveRasterIO call the format driver makes an asynchronous request to the server for data matching the requested resolution and window.
     50  1. The driver parses the response from the server and sets the buffer on GDALAsynchRasterIOMessage.
     51  1. GDALAsynchRasterIOMessage object is added to the format driver internal data queue.  If the queue size limit is exceeded the last message drops off.  Note the data for this message is still retained in the wavelet cache for the driver - just the rendering is discarded.
     52  1. Check there is a data message to render.
     53  1. Retrieve the next data message and render / process.
     54  1. Finished with the data message, release the resource associated with it.
    4155
    4256
    4357
    44 
    45 === Sequence of Events ===
    46 
    47 
    48 
    49 
    50