13#ifndef GDALALG_VECTOR_OUTPUT_ABSTRACT_INCLUDED
14#define GDALALG_VECTOR_OUTPUT_ABSTRACT_INCLUDED
16#include "gdalalgorithm.h"
29 GDALVectorOutputAbstractAlgorithm(
const std::string &name,
30 const std::string &description,
31 const std::string &helpURL)
32 : GDALAlgorithm(name, description, helpURL)
36 ~GDALVectorOutputAbstractAlgorithm()
override;
38 void AddAllOutputArgs();
40 struct SetupOutputDatasetRet
42 std::unique_ptr<GDALDataset> newDS{};
45 OGRLayer *layer =
nullptr;
47 SetupOutputDatasetRet() =
default;
48 SetupOutputDatasetRet(SetupOutputDatasetRet &&) =
default;
49 SetupOutputDatasetRet &operator=(SetupOutputDatasetRet &&) =
default;
54 SetupOutputDatasetRet SetupOutputDataset();
55 bool SetDefaultOutputLayerNameIfNeeded(GDALDataset *poOutDS);
57 std::string m_outputFormat{};
58 GDALArgDatasetValue m_outputDataset{};
59 std::vector<std::string> m_creationOptions{};
60 std::vector<std::string> m_layerCreationOptions{};
61 std::string m_outputLayerName{};
62 bool m_overwrite =
false;
63 bool m_update =
false;
64 bool m_overwriteLayer =
false;
65 bool m_appendLayer =
false;
GDAL algorithm.
Definition gdalalgorithm_cpp.h:2261
#define CPL_DISALLOW_COPY_ASSIGN(ClassName)
Helper to remove the copy and assignment constructors so that the compiler will not generate the defa...
Definition cpl_port.h:936
Classes related to registration of format support, and opening datasets.