Coverage Report

Created: 2026-02-14 06:52

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/gdal/apps/gdalalg_raster_overview_delete.cpp
Line
Count
Source
1
/******************************************************************************
2
 *
3
 * Project:  GDAL
4
 * Purpose:  gdal "raster overview delete" subcommand
5
 * Author:   Even Rouault <even dot rouault at spatialys.com>
6
 *
7
 ******************************************************************************
8
 * Copyright (c) 2025, Even Rouault <even dot rouault at spatialys.com>
9
 *
10
 * SPDX-License-Identifier: MIT
11
 ****************************************************************************/
12
13
#include "gdalalg_raster_overview_delete.h"
14
15
#include "gdal_priv.h"
16
17
//! @cond Doxygen_Suppress
18
19
#ifndef _
20
0
#define _(x) (x)
21
#endif
22
23
/************************************************************************/
24
/*                 GDALRasterOverviewAlgorithmDelete()                  */
25
/************************************************************************/
26
27
GDALRasterOverviewAlgorithmDelete::GDALRasterOverviewAlgorithmDelete()
28
0
    : GDALAlgorithm(NAME, DESCRIPTION, HELP_URL)
29
0
{
30
0
    AddProgressArg();
31
0
    AddOpenOptionsArg(&m_openOptions);
32
0
    AddArg("dataset", 0,
33
0
           _("Dataset (to be updated in-place, unless --read-only)"),
34
0
           &m_dataset, GDAL_OF_RASTER | GDAL_OF_UPDATE)
35
0
        .SetPositional()
36
0
        .SetRequired();
37
0
    AddArg("external", 0, _("Delete external overviews"), &m_readOnly)
38
0
        .AddHiddenAlias("ro")
39
0
        .AddHiddenAlias(GDAL_ARG_NAME_READ_ONLY);
40
0
}
41
42
/************************************************************************/
43
/*             GDALRasterOverviewAlgorithmDelete::RunImpl()             */
44
/************************************************************************/
45
46
bool GDALRasterOverviewAlgorithmDelete::RunImpl(GDALProgressFunc pfnProgress,
47
                                                void *pProgressData)
48
0
{
49
0
    auto poDS = m_dataset.GetDatasetRef();
50
0
    CPLAssert(poDS);
51
52
0
    return GDALBuildOverviews(GDALDataset::ToHandle(poDS), "NONE", 0, nullptr,
53
0
                              0, nullptr, pfnProgress,
54
0
                              pProgressData) == CE_None;
55
0
}
56
57
//! @endcond