13#ifndef GDALALG_RASTER_CLIP_INCLUDED
14#define GDALALG_RASTER_CLIP_INCLUDED
16#include "gdalalg_raster_pipeline.h"
18#include "gdalalg_clip_common.h"
26class GDALRasterClipAlgorithm
27 :
public GDALRasterPipelineStepAlgorithm,
31 static constexpr const char *NAME =
"clip";
32 static constexpr const char *DESCRIPTION =
"Clip a raster dataset.";
33 static constexpr const char *HELP_URL =
"/programs/gdal_raster_clip.html";
35 explicit GDALRasterClipAlgorithm(
bool standaloneStep =
false);
38 bool RunStep(GDALPipelineStepRunContext &ctxt)
override;
40 std::vector<int> m_window{};
41 bool m_onlyBBOX{
false};
42 bool m_allowExtentOutsideSource{
false};
43 bool m_addAlpha{
false};
50class GDALRasterClipAlgorithmStandalone final :
public GDALRasterClipAlgorithm
53 GDALRasterClipAlgorithmStandalone()
54 : GDALRasterClipAlgorithm( true)
58 ~GDALRasterClipAlgorithmStandalone()
override;