QGIS API Documentation 3.43.0-Master (56aa1fd18d7)
qgsprocessingparameteralignrasterlayers.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsprocessingparameteralignrasterlayers.h
3 ---------------------
4 Date : July 2023
5 Copyright : (C) 2023 by Alexander Bruy
6 Email : alexander dot bruy at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSPROCESSINGPARAMETERALIGNRASTERLAYERS_H
17#define QGSPROCESSINGPARAMETERALIGNRASTERLAYERS_H
18
22#include "qgsalignrasterdata.h"
23
54{
55 public:
57 QgsProcessingParameterAlignRasterLayers( const QString &name, const QString &description = QString() );
58
60 QString type() const override;
61 bool checkValueIsAcceptable( const QVariant &input, QgsProcessingContext *context = nullptr ) const override;
62 QString valueAsPythonString( const QVariant &value, QgsProcessingContext &context ) const override;
64 QString valueAsString( const QVariant &value, QgsProcessingContext &context, bool &ok SIP_OUT ) const override;
65 QVariant valueAsJsonObject( const QVariant &value, QgsProcessingContext &context ) const override;
66
68 static QString typeName() { return QStringLiteral( "alignrasterlayers" ); }
70 static QList<QgsAlignRasterData::RasterItem> parameterAsItems( const QVariant &layersVariant, QgsProcessingContext &context );
72 static QgsAlignRasterData::RasterItem variantMapAsItem( const QVariantMap &layerVariantMap, QgsProcessingContext &context );
74 static QVariantMap itemAsVariantMap( const QgsAlignRasterData::RasterItem &item );
75};
76
77#ifndef SIP_RUN
79
87class CORE_EXPORT QgsProcessingParameterTypeAlignRasterLayers : public QgsProcessingParameterType
88{
89 public:
90 QgsProcessingParameterDefinition *create( const QString &name ) const override SIP_FACTORY
91 {
93 }
94
95 QString description() const override
96 {
97 return QCoreApplication::translate( "Processing", "An input allowing selection of multiple raster layers to align." );
98 }
99
100 QString name() const override
101 {
102 return QCoreApplication::translate( "Processing", "Align raster Layers" );
103 }
104
105 QString id() const override
106 {
108 }
109
110 QString pythonImportString() const override
111 {
112 return QStringLiteral( "from qgis.core import QgsProcessingParameterAlignRasterLayers" );
113 }
114
115 QString className() const override
116 {
117 return QStringLiteral( "QgsProcessingParameterAlignRasterLayers" );
118 }
119
120 QStringList acceptedPythonTypes() const override
121 {
122 return QStringList() << QObject::tr( "list[dict]: list of input layers as dictionaries, see QgsProcessingParameterAlignRasterLayers docs" )
123 << QObject::tr( "list[str]: list of layer IDs" )
124 << QObject::tr( "list[str]: list of layer names" )
125 << QObject::tr( "list[str]: list of layer sources" )
126 << QObject::tr( "str: layer ID" )
127 << QObject::tr( "str: layer name" )
128 << QObject::tr( "str: layer source" )
129 << QStringLiteral( "list[QgsMapLayer]" )
130 << QStringLiteral( "QgsRasterLayer" );
131 }
132
133 QStringList acceptedParameterTypes() const override
134 {
135 return QStringList()
142 }
143
144 QStringList acceptedOutputTypes() const override
145 {
146 return QStringList()
152 }
153};
154
156#endif
157
158#endif // QGSPROCESSINGPARAMETERALIGNRASTERLAYERS_H
Contains information about the context in which a processing algorithm is executed.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
static QString typeName()
Returns the type name for the output class.
A parameter for Processing algorithms specifying how rasters should be aligned.
static QString typeName()
Returns the type name for the parameter class.
Base class for the definition of processing parameters.
virtual QVariant valueAsJsonObject(const QVariant &value, QgsProcessingContext &context) const
Returns a version of the parameter input value, which is suitable for use in a JSON object.
virtual QString asPythonString(QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass) const
Returns the parameter definition as a Python command which can be used within a Python Processing scr...
QString description() const
Returns the description for the parameter.
virtual QString valueAsString(const QVariant &value, QgsProcessingContext &context, bool &ok) const
Returns a string version of the parameter input value (if possible).
virtual QgsProcessingParameterDefinition * clone() const =0
Creates a clone of the parameter definition.
virtual QString type() const =0
Unique parameter type name.
QString name() const
Returns the name of the parameter.
virtual QString valueAsPythonString(const QVariant &value, QgsProcessingContext &context) const
Returns a string version of the parameter input value, which is suitable for use as an input paramete...
virtual bool checkValueIsAcceptable(const QVariant &input, QgsProcessingContext *context=nullptr) const
Checks whether the specified input value is acceptable for the parameter.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
static QString typeName()
Returns the type name for the parameter class.
Makes metadata of processing parameters available.
static QString typeName()
Returns the type name for the parameter class.
PythonOutputType
Available Python output types.
@ PythonQgsProcessingAlgorithmSubclass
Full Python QgsProcessingAlgorithm subclass.
#define SIP_OUT
Definition qgis_sip.h:58
#define SIP_FACTORY
Definition qgis_sip.h:76
Definition of one raster layer for alignment.