OGRLayer * OGRMemDataSource::ICreateLayer( const char *pszLayerName, OGRSpatialReference *poSRSIn, OGRwkbGeometryType eType, char **papszOptions ) { // Create the layer object. OGRSpatialReference* poSRS = poSRSIn; if( poSRS ) { poSRS = poSRS->Clone(); poSRS->SetAxisMappingStrategy(OAMS_TRADITIONAL_GIS_ORDER); } OGRMemLayer *poLayer = new OGRMemLayer(pszLayerName, poSRS, eType); if( poSRS ) { poSRS->Release(); } if( CPLFetchBool(papszOptions, "ADVERTIZE_UTF8", false) ) poLayer->SetAdvertizeUTF8(true); // Add layer to data source layer list. papoLayers = static_cast<OGRMemLayer **>( CPLRealloc(papoLayers, sizeof(OGRMemLayer *) * (nLayers + 1))); papoLayers[nLayers++] = poLayer; return poLayer; }
OGRLayer * OGRMemDataSource::ICreateLayer( const char * pszLayerName, OGRSpatialReference *poSRS, OGRwkbGeometryType eType, char ** papszOptions ) { /* -------------------------------------------------------------------- */ /* Create the layer object. */ /* -------------------------------------------------------------------- */ OGRMemLayer *poLayer = new OGRMemLayer( pszLayerName, poSRS, eType ); if( CPLFetchBool(papszOptions, "ADVERTIZE_UTF8", false) ) poLayer->SetAdvertizeUTF8(true); /* -------------------------------------------------------------------- */ /* Add layer to data source layer list. */ /* -------------------------------------------------------------------- */ papoLayers = static_cast<OGRMemLayer **>( CPLRealloc( papoLayers, sizeof(OGRMemLayer *) * (nLayers+1) ) ); papoLayers[nLayers++] = poLayer; return poLayer; }