13#ifndef GDALALG_VECTOR_SQL_INCLUDED
14#define GDALALG_VECTOR_SQL_INCLUDED
16#include "gdalalg_vector_pipeline.h"
24class GDALVectorSQLAlgorithm
25 :
public GDALVectorPipelineStepAlgorithm
28 static constexpr const char *NAME =
"sql";
29 static constexpr const char *DESCRIPTION =
30 "Apply SQL statement(s) to a dataset.";
31 static constexpr const char *HELP_URL =
"/programs/gdal_vector_sql.html";
33 explicit GDALVectorSQLAlgorithm(
bool standaloneStep =
false);
36 static ConstructorOptions GetConstructorOptions(
bool standaloneStep);
37 bool RunStep(GDALPipelineStepRunContext &ctxt)
override;
39 std::vector<std::string> m_sql{};
40 std::vector<std::string> m_outputLayer{};
41 std::string m_dialect{};
48class GDALVectorSQLAlgorithmStandalone final :
public GDALVectorSQLAlgorithm
51 GDALVectorSQLAlgorithmStandalone()
52 : GDALVectorSQLAlgorithm( true)
56 ~GDALVectorSQLAlgorithmStandalone()
override;