OGRDataSource *OGRNASDriver::Open( const char * pszFilename,
                                   int bUpdate )

{
    OGRNASDataSource    *poDS;

    if( bUpdate )
        return NULL;

    poDS = new OGRNASDataSource();

    if( !poDS->Open( pszFilename, TRUE )
        || poDS->GetLayerCount() == 0 )
    {
        delete poDS;
        return NULL;
    }
    else
        return poDS;
}
Example #2
0
static GDALDataset *OGRNASDriverOpen( GDALOpenInfo* poOpenInfo )

{
    OGRNASDataSource    *poDS;

    if( poOpenInfo->eAccess == GA_Update ||
        !OGRNASDriverIdentify(poOpenInfo) )
        return NULL;

    VSIFCloseL(poOpenInfo->fpL);
    poOpenInfo->fpL = NULL;

    poDS = new OGRNASDataSource();

    if( !poDS->Open( poOpenInfo->pszFilename )
        || poDS->GetLayerCount() == 0 )
    {
        delete poDS;
        return NULL;
    }
    else
        return poDS;
}