311 | | |
312 | | /** Ask a layer to re-"adopt" its previous feature definition object. |
313 | | * |
314 | | * The aim is that the user doesn't see visible object changes. |
315 | | * |
316 | | * This method is called if StartTransaction(), CommitTransaction() or |
317 | | * RollbackTransaction() has closed and reopened a datasource. |
318 | | * |
319 | | * The implementation os the method should drop the reference to feature |
320 | | * definition object it may have currently, assign the poFeatureDefn as |
321 | | * its current definition object, and take a new reference on it. |
322 | | * |
323 | | * The passed poFeatureDefn object is supposed to be the "same" as |
324 | | * the one the layer has currently (as verified with IsSame()) since |
325 | | * the emulated datasource wrapper prevents layer structural modifications |
326 | | * in cases where the user has already called GetLayerDefn() |
327 | | */ |
328 | | virtual void ReadoptOldFeatureDefn(OGRDataSource* poDS, |
329 | | OGRLayer* poLayer, |
330 | | OGRFeatureDefn* poFeatureDefn) = 0; |