13#ifndef GDALALG_RASTER_RGB_TO_PALETTE_INCLUDED
14#define GDALALG_RASTER_RGB_TO_PALETTE_INCLUDED
16#include "gdalalg_raster_pipeline.h"
24class GDALRasterRGBToPaletteAlgorithm
25 :
public GDALRasterPipelineNonNativelyStreamingAlgorithm
28 static constexpr const char *NAME =
"rgb-to-palette";
29 static constexpr const char *DESCRIPTION =
30 "Convert a RGB image into a pseudo-color / paletted image.";
31 static constexpr const char *HELP_URL =
32 "/programs/gdal_raster_rgb_to_palette.html";
34 explicit GDALRasterRGBToPaletteAlgorithm(
bool standaloneStep =
false);
37 bool RunStep(GDALPipelineStepRunContext &ctxt)
override;
39 int m_colorCount = 256;
40 std::string m_colorMap{};
42 bool m_noDither =
false;
50class GDALRasterRGBToPaletteAlgorithmStandalone final
51 :
public GDALRasterRGBToPaletteAlgorithm
54 GDALRasterRGBToPaletteAlgorithmStandalone()
55 : GDALRasterRGBToPaletteAlgorithm( true)
59 ~GDALRasterRGBToPaletteAlgorithmStandalone()
override;