QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
Base class for all parameter definitions which represent file or layer destinations, e.g. More...
#include <qgsprocessingparameters.h>
Public Member Functions | |
QgsProcessingDestinationParameter (const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true) | |
Constructor for QgsProcessingDestinationParameter. | |
QString | asPythonString (QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonOutputType::PythonQgsProcessingAlgorithmSubclass) const override |
Returns the parameter definition as a Python command which can be used within a Python Processing script. | |
bool | createByDefault () const |
Returns true if the destination should be created by default. | |
QString | createFileFilter () const override |
This method needs to be reimplemented in all classes which implement this interface and return a file filter. | |
virtual QString | defaultFileExtension () const =0 |
Returns the default file extension for destination file paths associated with this parameter. | |
bool | fromVariantMap (const QVariantMap &map) override |
Restores this parameter to a QVariantMap. | |
virtual QString | generateTemporaryDestination (const QgsProcessingContext *context=nullptr) const |
Generates a temporary destination value for this parameter. | |
bool | isDestination () const override |
Returns true if this parameter represents a file or layer destination, e.g. | |
virtual bool | isSupportedOutputValue (const QVariant &value, QgsProcessingContext &context, QString &error) const |
Tests whether a value is a supported value for this parameter. | |
void | setCreateByDefault (bool createByDefault) |
Sets whether the destination should be created by default. | |
void | setSupportsNonFileBasedOutput (bool supportsNonFileBasedOutput) |
Sets whether the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs. | |
bool | supportsNonFileBasedOutput () const |
Returns true if the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs. | |
virtual QgsProcessingOutputDefinition * | toOutputDefinition () const =0 |
Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parameter. | |
QVariantMap | toVariantMap () const override |
Saves this parameter to a QVariantMap. | |
Public Member Functions inherited from QgsProcessingParameterDefinition | |
QgsProcessingParameterDefinition (const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QString &help=QString()) | |
Constructor for QgsProcessingParameterDefinition. | |
virtual | ~QgsProcessingParameterDefinition ()=default |
QStringList | additionalExpressionContextVariables () const |
Returns a list of additional expression context variables which are available for use when evaluating this parameter. | |
QgsProcessingAlgorithm * | algorithm () const |
Returns a pointer to the algorithm which owns this parameter. | |
virtual QString | asScriptCode () const |
Returns the parameter definition encoded in a string which can be used within a Processing script. | |
virtual bool | checkValueIsAcceptable (const QVariant &input, QgsProcessingContext *context=nullptr) const |
Checks whether the specified input value is acceptable for the parameter. | |
virtual QgsProcessingParameterDefinition * | clone () const =0 |
Creates a clone of the parameter definition. | |
QVariant | defaultValue () const |
Returns the default value for the parameter. | |
QVariant | defaultValueForGui () const |
Returns the default value to use for the parameter in a GUI. | |
virtual QStringList | dependsOnOtherParameters () const |
Returns a list of other parameter names on which this parameter is dependent (e.g. | |
QString | description () const |
Returns the description for the parameter. | |
QString | dynamicLayerParameterName () const |
Returns the name of the parameter for a layer linked to a dynamic parameter, or an empty string if this is not set. | |
QgsPropertyDefinition | dynamicPropertyDefinition () const |
Returns the property definition for dynamic properties. | |
Qgis::ProcessingParameterFlags | flags () const |
Returns any flags associated with the parameter. | |
QVariant | guiDefaultValueOverride () const |
Returns the default value to use in the GUI for the parameter. | |
QString | help () const |
Returns the help for the parameter. | |
bool | isDynamic () const |
Returns true if the parameter supports is dynamic, and can support data-defined values (i.e. | |
QVariantMap & | metadata () |
Returns the parameter's freeform metadata. | |
QVariantMap | metadata () const |
Returns the parameter's freeform metadata. | |
QString | name () const |
Returns the name of the parameter. | |
QgsProcessingProvider * | provider () const |
Returns a pointer to the provider for the algorithm which owns this parameter. | |
void | setAdditionalExpressionContextVariables (const QStringList &variables) |
Sets a list of additional expression context variables which are available for use when evaluating this parameter. | |
void | setDefaultValue (const QVariant &value) |
Sets the default value for the parameter. | |
void | setDescription (const QString &description) |
Sets the description for the parameter. | |
void | setDynamicLayerParameterName (const QString &name) |
Sets the name for the parameter for a layer linked to a dynamic parameter, or an empty string if this is not set. | |
void | setDynamicPropertyDefinition (const QgsPropertyDefinition &definition) |
Sets the property definition for dynamic properties. | |
void | setFlags (Qgis::ProcessingParameterFlags flags) |
Sets the flags associated with the parameter. | |
void | setGuiDefaultValueOverride (const QVariant &value) |
Sets the default value to use for the parameter in GUI widgets. | |
void | setHelp (const QString &help) |
Sets the help for the parameter. | |
void | setIsDynamic (bool dynamic) |
Sets whether the parameter is dynamic, and can support data-defined values (i.e. | |
void | setMetadata (const QVariantMap &metadata) |
Sets the parameter's freeform metadata. | |
void | setName (const QString &name) |
Sets the name of the parameter. | |
virtual QString | toolTip () const |
Returns a formatted tooltip for use with the parameter, which gives helpful information like parameter description, ID, and extra content like default values (depending on parameter type). | |
virtual QString | type () const =0 |
Unique parameter type name. | |
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 | valueAsPythonComment (const QVariant &value, QgsProcessingContext &context) const |
Returns a Python comment explaining a parameter value, or an empty string if no comment is required. | |
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 parameter value when running an algorithm directly from a Python command. | |
virtual QString | valueAsString (const QVariant &value, QgsProcessingContext &context, bool &ok) const |
Returns a string version of the parameter input value (if possible). | |
virtual QStringList | valueAsStringList (const QVariant &value, QgsProcessingContext &context, bool &ok) const |
Returns a string list version of the parameter input value (if possible). | |
Public Member Functions inherited from QgsFileFilterGenerator | |
virtual | ~QgsFileFilterGenerator ()=default |
Protected Member Functions | |
QgsProcessingProvider * | originalProvider () const |
Original (source) provider which this parameter has been derived from. | |
Protected Member Functions inherited from QgsProcessingParameterDefinition | |
QVariant | defaultGuiValueFromSetting () const |
Default gui value for an algorithm parameter from settings. | |
QVariant | valueAsJsonObjectPrivate (const QVariant &value, QgsProcessingContext &context, ValueAsStringFlags flags) const |
Internal method for evaluating values as JSON objects. | |
QString | valueAsStringPrivate (const QVariant &value, QgsProcessingContext &context, bool &ok, ValueAsStringFlags flags) const |
Internal method for evaluating values as string. | |
Friends | |
class | QgsProcessingModelAlgorithm |
class | TestQgsProcessing |
class | TestQgsProcessingModelAlgorithm |
Additional Inherited Members | |
Public Types inherited from QgsProcessingParameterDefinition | |
enum class | ValueAsStringFlag : int { AllowMapLayerValues = 1 << 0 } |
Flags for passing to the valueAsStringPrivate() method. More... | |
typedef QFlags< ValueAsStringFlag > | ValueAsStringFlags |
Protected Attributes inherited from QgsProcessingParameterDefinition | |
QStringList | mAdditionalExpressionVariables |
Additional expression context variables exposed for use by this parameter. | |
QgsProcessingAlgorithm * | mAlgorithm = nullptr |
Pointer to algorithm which owns this parameter. | |
QVariant | mDefault |
Default value for parameter. | |
QString | mDescription |
Parameter description. | |
QString | mDynamicLayerParameterName |
Linked vector layer parameter name for dynamic properties. | |
Qgis::ProcessingParameterFlags | mFlags |
Parameter flags. | |
QVariant | mGuiDefault |
Default value for parameter in GUI. | |
QString | mHelp |
Parameter help. | |
bool | mIsDynamic = false |
True for dynamic parameters, which can have data-defined (QgsProperty) based values. | |
QVariantMap | mMetadata |
Freeform metadata for parameter. Mostly used by widget wrappers to customize their appearance and behavior. | |
QString | mName |
Parameter name. | |
QgsPropertyDefinition | mPropertyDefinition |
Data defined property definition. | |
Base class for all parameter definitions which represent file or layer destinations, e.g.
parameters which are used for the destination for layers output by an algorithm.
Definition at line 3326 of file qgsprocessingparameters.h.
QgsProcessingDestinationParameter::QgsProcessingDestinationParameter | ( | const QString & | name, |
const QString & | description = QString() , |
||
const QVariant & | defaultValue = QVariant() , |
||
bool | optional = false , |
||
bool | createByDefault = true |
||
) |
Constructor for QgsProcessingDestinationParameter.
If createByDefault is false
and the parameter is optional, then the destination output will not be created by default.
Definition at line 7095 of file qgsprocessingparameters.cpp.
|
overridevirtual |
Returns the parameter definition as a Python command which can be used within a Python Processing script.
The outputType argument specifies the desired output format for the Python string, i.e. the intended end use of the generated Python code.
Reimplemented from QgsProcessingParameterDefinition.
Reimplemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, and QgsProcessingParameterFileDestination.
Definition at line 7118 of file qgsprocessingparameters.cpp.
bool QgsProcessingDestinationParameter::createByDefault | ( | ) | const |
Returns true
if the destination should be created by default.
For optional parameters, a return value of false
indicates that the destination should not be created by default.
Definition at line 7178 of file qgsprocessingparameters.cpp.
|
overridevirtual |
This method needs to be reimplemented in all classes which implement this interface and return a file filter.
Implements QgsFileFilterGenerator.
Reimplemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterPointCloudDestination, and QgsProcessingParameterVectorTileDestination.
Definition at line 7145 of file qgsprocessingparameters.cpp.
|
pure virtual |
Returns the default file extension for destination file paths associated with this parameter.
Implemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterFolderDestination, QgsProcessingParameterPointCloudDestination, and QgsProcessingParameterVectorTileDestination.
|
overridevirtual |
Restores this parameter to a QVariantMap.
Subclasses should ensure that they call the base class method.
Reimplemented from QgsProcessingParameterDefinition.
Reimplemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, and QgsProcessingParameterFileDestination.
Definition at line 7110 of file qgsprocessingparameters.cpp.
|
virtual |
Generates a temporary destination value for this parameter.
The returned value will be a file path or QGIS data provider URI suitable for temporary storage of created layers and files.
Reimplemented in QgsProcessingParameterFeatureSink.
Definition at line 7150 of file qgsprocessingparameters.cpp.
|
inlineoverridevirtual |
Returns true
if this parameter represents a file or layer destination, e.g.
parameters which are used for the destination for layers output by an algorithm will return true
.
Reimplemented from QgsProcessingParameterDefinition.
Definition at line 3339 of file qgsprocessingparameters.h.
|
virtual |
Tests whether a value is a supported value for this parameter.
Will return false
when a value with an unsupported file extension is specified. The default implementation calls QgsProcessingProvider::isSupportedOutputValue() to test compatibility.
value | value to test |
context | Processing context |
error | will be set to a descriptive error string |
true
if value is supported.Definition at line 7168 of file qgsprocessingparameters.cpp.
|
inlineprotected |
Original (source) provider which this parameter has been derived from.
In the case of destination parameters which are part of model algorithms, this will reflect the child algorithm's provider which actually generates the parameter, as opposed to the provider which this parameter belongs to (i.e. the model provider)
Definition at line 3418 of file qgsprocessingparameters.h.
void QgsProcessingDestinationParameter::setCreateByDefault | ( | bool | createByDefault | ) |
Sets whether the destination should be created by default.
For optional parameters, a value of false
indicates that the destination should not be created by default.
Definition at line 7183 of file qgsprocessingparameters.cpp.
|
inline |
Sets whether the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs.
Definition at line 3363 of file qgsprocessingparameters.h.
|
inline |
Returns true
if the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs.
Definition at line 3356 of file qgsprocessingparameters.h.
|
pure virtual |
Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parameter.
Implemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterFolderDestination, QgsProcessingParameterPointCloudDestination, and QgsProcessingParameterVectorTileDestination.
|
overridevirtual |
Saves this parameter to a QVariantMap.
Subclasses should ensure that they call the base class method and then extend the result with additional properties.
Reimplemented from QgsProcessingParameterDefinition.
Reimplemented in QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, and QgsProcessingParameterFileDestination.
Definition at line 7102 of file qgsprocessingparameters.cpp.
|
friend |
Definition at line 3434 of file qgsprocessingparameters.h.
|
friend |
Definition at line 3435 of file qgsprocessingparameters.h.
|
friend |
Definition at line 3436 of file qgsprocessingparameters.h.