LCOV - code coverage report
Current view: top level - apps - gdalalg_raster_overview_delete.cpp (source / functions) Hit Total Coverage
Test: gdal_filtered.info Lines: 15 15 100.0 %
Date: 2026-04-23 19:47:11 Functions: 2 2 100.0 %

          Line data    Source code
       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             : #define _(x) (x)
      21             : #endif
      22             : 
      23             : /************************************************************************/
      24             : /*                 GDALRasterOverviewAlgorithmDelete()                  */
      25             : /************************************************************************/
      26             : 
      27          47 : GDALRasterOverviewAlgorithmDelete::GDALRasterOverviewAlgorithmDelete()
      28          47 :     : GDALAlgorithm(NAME, DESCRIPTION, HELP_URL)
      29             : {
      30          47 :     AddProgressArg();
      31          47 :     AddOpenOptionsArg(&m_openOptions);
      32             :     AddInputDatasetArg(&m_dataset, GDAL_OF_RASTER | GDAL_OF_UPDATE,
      33             :                        /* positionalAndRequired = */ true,
      34          47 :                        _("Dataset (to be updated in-place, unless --external)"))
      35          47 :         .AddAlias("dataset");
      36          94 :     AddArg("external", 0, _("Delete external overviews"), &m_readOnly)
      37          94 :         .AddHiddenAlias("ro")
      38          47 :         .AddHiddenAlias(GDAL_ARG_NAME_READ_ONLY);
      39          47 : }
      40             : 
      41             : /************************************************************************/
      42             : /*             GDALRasterOverviewAlgorithmDelete::RunImpl()             */
      43             : /************************************************************************/
      44             : 
      45           3 : bool GDALRasterOverviewAlgorithmDelete::RunImpl(GDALProgressFunc pfnProgress,
      46             :                                                 void *pProgressData)
      47             : {
      48           3 :     auto poDS = m_dataset.GetDatasetRef();
      49           3 :     CPLAssert(poDS);
      50             : 
      51           3 :     return GDALBuildOverviews(GDALDataset::ToHandle(poDS), "NONE", 0, nullptr,
      52             :                               0, nullptr, pfnProgress,
      53           3 :                               pProgressData) == CE_None;
      54             : }
      55             : 
      56             : //! @endcond

Generated by: LCOV version 1.14