Coverage Report

Created: 2026-08-14 09:29

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/gdal/ogr/ogrsf_frmts/adbc/ogradbcdriver.cpp
Line
Count
Source
1
/******************************************************************************
2
 *
3
 * Project:  GDAL
4
 * Purpose:  Arrow Database Connectivity driver
5
 * Author:   Even Rouault, <even dot rouault at spatialys.com>
6
 *
7
 ******************************************************************************
8
 * Copyright (c) 2024, Even Rouault <even dot rouault at spatialys.com>
9
 *
10
 * SPDX-License-Identifier: MIT
11
 ****************************************************************************/
12
13
#include "ogr_adbc.h"
14
#include "ogradbcdrivercore.h"
15
16
/************************************************************************/
17
/*                         OGRADBCDriverOpen()                          */
18
/************************************************************************/
19
20
static GDALDataset *OGRADBCDriverOpen(GDALOpenInfo *poOpenInfo)
21
34
{
22
34
    if (!OGRADBCDriverIdentify(poOpenInfo))
23
0
        return nullptr;
24
34
    auto poDS = std::make_unique<OGRADBCDataset>();
25
34
    if (!poDS->Open(poOpenInfo))
26
34
        return nullptr;
27
0
    return poDS.release();
28
34
}
29
30
/************************************************************************/
31
/*                          RegisterOGRADBC()                           */
32
/************************************************************************/
33
34
void RegisterOGRADBC()
35
22
{
36
22
    if (!GDAL_CHECK_VERSION(DRIVER_NAME))
37
0
        return;
38
39
22
    if (GDALGetDriverByName(DRIVER_NAME) != nullptr)
40
0
        return;
41
42
22
    GDALDriver *poDriver = new GDALDriver();
43
22
    OGRADBCDriverSetCommonMetadata(poDriver);
44
22
    poDriver->pfnOpen = OGRADBCDriverOpen;
45
22
    GetGDALDriverManager()->RegisterDriver(poDriver);
46
22
}