[gdal-dev] S57 objects’ catalog reload
Jerome Siot
jerome.siot at mytimezero.com
Mon Feb 12 00:50:39 PST 2018
Hi Even,
Thank you for your quick answer,
We work with C#, and unfortunately, we didn’t find GDALDriverManager API.
Instead, we tried algorithm you proposed with OGR Driver.DeRegister()/Register() : this does not work, csv change is not taked into account (csv file seems to be cached)
--
Jerome
From: Even Rouault [mailto:even.rouault at spatialys.com]
Sent: Friday, February 9, 2018 2:53 PM
To: gdal-dev at lists.osgeo.org
Cc: Jerome Siot
Subject: Re: [gdal-dev] S57 objects’ catalog reload
Jerome,
>
> I would like to change the s57 objects’ catalog while running between two
> open of datasources. How can I make S57ObjectClasses.csv reloaded ?
> Or how can I change the loaded S57ObjectClasses ?
If your workflow is
open dataset 1
work with it
close dataset 1
change .csv file
open dataset 2
work with it
close dataset 2
then after "change .csv file", you could unload and reload the S57 driver so that the S57ClassRegistrar singleton gets destroyed and reloaded, with something like (untested):
GDALDriverManager* poDM = GetGDALDriverManager();
GDALDriver* poDrv = poDM->GetDriverByName("S57");
poDM->DeregisterDriver(poDrv);
delete poDrv;
RegisterOGRS57();
If you need to operate on 2 simultaneously opened datasets with different .csv files, then changes would be needed in the S57 driver.
Even
--
Spatialys - Geospatial professional services
http://www.spatialys.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20180212/cc95aa1f/attachment.html>
More information about the gdal-dev
mailing list