Coverage Report

Created: 2026-11-12 08:28

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
51
{
22
51
    if (!OGRADBCDriverIdentify(poOpenInfo))
23
0
        return nullptr;
24
51
    auto poDS = std::make_unique<OGRADBCDataset>();
25
51
    if (!poDS->Open(poOpenInfo))
26
51
        return nullptr;
27
0
    return poDS.release();
28
51
}
29
30
/************************************************************************/
31
/*                          RegisterOGRADBC()                           */
32
/************************************************************************/
33
34
void RegisterOGRADBC()
35
24
{
36
24
    if (!GDAL_CHECK_VERSION(DRIVER_NAME))
37
0
        return;
38
39
24
    if (GDALGetDriverByName(DRIVER_NAME) != nullptr)
40
0
        return;
41
42
24
    GDALDriver *poDriver = new GDALDriver();
43
24
    OGRADBCDriverSetCommonMetadata(poDriver);
44
24
    poDriver->pfnOpen = OGRADBCDriverOpen;
45
24
    GetGDALDriverManager()->RegisterDriver(poDriver);
46
24
}