[gdal-dev] Re: C# bindings - setting up progress delegate for Gdal.Open()

Even Rouault even.rouault at mines-paris.org
Tue Jan 3 07:38:20 EST 2012

Selon Maksim Sestic <max at geoinova.com>:

> Hi Even,
> I agree. Although it could be possible to meter number of tiles being
> received, as we know the total number of tiles. "Granularity" would be
> possible to set via single BlockSizeX/Y, i.e. 256x256 pixels would do the
> trick.
> Also - it's seems strange :-) that GDAL enables metering via
> GDALProgressFunc callback during dataset Create phase, and not during
> dataset Open phase.
> I think I misunderstood your info, but does it mean that GetCapabilities()
> gets executed during a call to Gdal.Open() for WMS driver?

Perhaps I musinuderstood your question, but your question was about Open().
Open() does nothing except running a GetCapabilities() which should not be a too
long operation if the server is normally responsive. There's no progress to
measure. It is binary : 0% or 100%.

And actually, if you provide the full XML, I'm not sure that Open() does the
GetCapabilities() actually. It might be instantenous. I was thinking of the case
when you use the new (GDAL 1.9) "WMS:http://url/to/wms/service" syntax.

But when you mention tile downloading, you are implying using something like a
CreateCopy() or a RasterIO() call. For CreateCopy(), there's a progress callback
that can be passed. RasterIO() has none since it is supposed to be an elementary
operation. If you use RasterIO(), it is up to you to compute the progress.

> Regards,
> Maksim Sestic
> --
> View this message in context:
> Sent from the GDAL - Dev mailing list archive at Nabble.com.
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev

More information about the gdal-dev mailing list