<div dir="ltr">Thanks Even, this is awesome functionality! Definitely makes it even easier to work with VRTs in memory!</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 13, 2019 at 3:37 AM Even Rouault <<a href="mailto:even.rouault@spatialys.com">even.rouault@spatialys.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On mardi 12 mars 2019 16:42:34 CET Patrick Young wrote:<br>
> Hi all,<br>
> <br>
> I was browsing some GDAL test cases and came across some tests like so:<br>
> <br>
> ds = gdal.BuildVRT('',...)<br>
> <br>
> aka the destination is an empty string.  Is the returned dataset a purely<br>
> in memory object in this case?  I assume it is safe to use like any other<br>
> dataset; some of the other VRT related tests are using "/vsimem/..." as the<br>
> destination, wasn't sure if one form should be prefered over another for<br>
> quick in memory vrt building.<br>
> <br>
<br>
If you use an empty string as the VRT filename, then it is not serialized at <br>
all when closing it, so you can't reopen it. You must use the dataset handle <br>
returned by gdal.BuildVRT() directly. Once the handle is closed, all <br>
associated memory is freed.<br>
<br>
If using '/vsimem/foo.vrt', then the VRT XML will be serialized in this <br>
filename, and you can re-open it later in the same process. And possibly <br>
gdal.Unlink() the file once done with it to clear memory (if using loops with <br>
unique filnemames, etc)<br>
<br>
Even<br>
<br>
-- <br>
Spatialys - Geospatial professional services<br>
<a href="http://www.spatialys.com" rel="noreferrer" target="_blank">http://www.spatialys.com</a><br>
</blockquote></div>