QGIS API Documentation 3.30.0-'s-Hertogenbosch (f186b8efe0)
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
QgsProcessingParameterDefinition Class Referenceabstract

Base class for the definition of processing parameters. More...

#include <qgsprocessingparameters.h>

Inheritance diagram for QgsProcessingParameterDefinition:
Inheritance graph
[legend]

Public Types

enum  Flag { FlagAdvanced = 1 << 1 , FlagHidden = 1 << 2 , FlagOptional = 1 << 3 , FlagIsModelOutput = 1 << 4 }
 Parameter flags. More...
 
enum class  ValueAsStringFlag : int { AllowMapLayerValues = 1 << 0 }
 Flags for passing to the valueAsStringPrivate() method. More...
 

Public Member Functions

 QgsProcessingParameterDefinition (const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, const QString &help=QString())
 Constructor for QgsProcessingParameterDefinition. More...
 
virtual ~QgsProcessingParameterDefinition ()=default
 
QStringList additionalExpressionContextVariables () const
 Returns a list of additional expression context variables which are available for use when evaluating this parameter. More...
 
QgsProcessingAlgorithmalgorithm () const
 Returns a pointer to the algorithm which owns this parameter. More...
 
virtual QString asPythonString (QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonQgsProcessingAlgorithmSubclass) const
 Returns the parameter definition as a Python command which can be used within a Python Processing script. More...
 
virtual QString asScriptCode () const
 Returns the parameter definition encoded in a string which can be used within a Processing script. More...
 
virtual bool checkValueIsAcceptable (const QVariant &input, QgsProcessingContext *context=nullptr) const
 Checks whether the specified input value is acceptable for the parameter. More...
 
virtual QgsProcessingParameterDefinitionclone () const =0
 Creates a clone of the parameter definition. More...
 
QVariant defaultValue () const
 Returns the default value for the parameter. More...
 
QVariant defaultValueForGui () const
 Returns the default value to use for the parameter in a GUI. More...
 
virtual QStringList dependsOnOtherParameters () const
 Returns a list of other parameter names on which this parameter is dependent (e.g. More...
 
QString description () const
 Returns the description for the parameter. More...
 
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. More...
 
QgsPropertyDefinition dynamicPropertyDefinition () const
 Returns the property definition for dynamic properties. More...
 
Flags flags () const
 Returns any flags associated with the parameter. More...
 
virtual bool fromVariantMap (const QVariantMap &map)
 Restores this parameter to a QVariantMap. More...
 
QVariant guiDefaultValueOverride () const
 Returns the default value to use in the GUI for the parameter. More...
 
QString help () const
 Returns the help for the parameter. More...
 
virtual bool isDestination () const
 Returns true if this parameter represents a file or layer destination, e.g. More...
 
bool isDynamic () const
 Returns true if the parameter supports is dynamic, and can support data-defined values (i.e. More...
 
QVariantMap & metadata ()
 Returns the parameter's freeform metadata. More...
 
QVariantMap metadata () const
 Returns the parameter's freeform metadata. More...
 
QString name () const
 Returns the name of the parameter. More...
 
QgsProcessingProviderprovider () const
 Returns a pointer to the provider for the algorithm which owns this parameter. More...
 
void setAdditionalExpressionContextVariables (const QStringList &variables)
 Sets a list of additional expression context variables which are available for use when evaluating this parameter. More...
 
void setDefaultValue (const QVariant &value)
 Sets the default value for the parameter. More...
 
void setDescription (const QString &description)
 Sets the description for the parameter. More...
 
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. More...
 
void setDynamicPropertyDefinition (const QgsPropertyDefinition &definition)
 Sets the property definition for dynamic properties. More...
 
void setFlags (Flags flags)
 Sets the flags associated with the parameter. More...
 
void setGuiDefaultValueOverride (const QVariant &value)
 Sets the default value to use for the parameter in GUI widgets. More...
 
void setHelp (const QString &help)
 Sets the help for the parameter. More...
 
void setIsDynamic (bool dynamic)
 Sets whether the parameter is dynamic, and can support data-defined values (i.e. More...
 
void setMetadata (const QVariantMap &metadata)
 Sets the parameter's freeform metadata. More...
 
void setName (const QString &name)
 Sets the name of the parameter. More...
 
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). More...
 
virtual QVariantMap toVariantMap () const
 Saves this parameter to a QVariantMap. More...
 
virtual QString type () const =0
 Unique parameter type name. More...
 
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. More...
 
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. More...
 
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. More...
 
virtual QString valueAsString (const QVariant &value, QgsProcessingContext &context, bool &ok) const
 Returns a string version of the parameter input value (if possible). More...
 
virtual QStringList valueAsStringList (const QVariant &value, QgsProcessingContext &context, bool &ok) const
 Returns a string list version of the parameter input value (if possible). More...
 

Protected Member Functions

QVariant valueAsJsonObjectPrivate (const QVariant &value, QgsProcessingContext &context, ValueAsStringFlags flags) const
 Internal method for evaluating values as JSON objects. More...
 
QString valueAsStringPrivate (const QVariant &value, QgsProcessingContext &context, bool &ok, ValueAsStringFlags flags) const
 Internal method for evaluating values as string. More...
 

Protected Attributes

QStringList mAdditionalExpressionVariables
 Additional expression context variables exposed for use by this parameter. More...
 
QgsProcessingAlgorithmmAlgorithm = nullptr
 Pointer to algorithm which owns this parameter. More...
 
QVariant mDefault
 Default value for parameter. More...
 
QString mDescription
 Parameter description. More...
 
QString mDynamicLayerParameterName
 Linked vector layer parameter name for dynamic properties. More...
 
Flags mFlags
 Parameter flags. More...
 
QVariant mGuiDefault
 Default value for parameter in GUI. More...
 
QString mHelp
 Parameter help. More...
 
bool mIsDynamic = false
 True for dynamic parameters, which can have data-defined (QgsProperty) based values. More...
 
QVariantMap mMetadata
 Freeform metadata for parameter. Mostly used by widget wrappers to customize their appearance and behavior. More...
 
QString mName
 Parameter name. More...
 
QgsPropertyDefinition mPropertyDefinition
 Data defined property definition. More...
 

Friends

class QgsProcessingAlgorithm
 

Detailed Description

Base class for the definition of processing parameters.

Parameter definitions encapsulate properties regarding the behavior of parameters, their acceptable ranges, defaults, etc.

Since
QGIS 3.0

Definition at line 333 of file qgsprocessingparameters.h.

Member Enumeration Documentation

◆ Flag

Parameter flags.

Enumerator
FlagAdvanced 

Parameter is an advanced parameter which should be hidden from users by default.

FlagHidden 

Parameter is hidden and should not be shown to users.

FlagOptional 

Parameter is optional.

FlagIsModelOutput 

Destination parameter is final output. The parameter name will be used.

Definition at line 448 of file qgsprocessingparameters.h.

◆ ValueAsStringFlag

Flags for passing to the valueAsStringPrivate() method.

Note
Not available in Python bindings
Since
QGIS 3.28
Enumerator
AllowMapLayerValues 

Enable map layer value handling.

Definition at line 851 of file qgsprocessingparameters.h.

Constructor & Destructor Documentation

◆ QgsProcessingParameterDefinition()

QgsProcessingParameterDefinition::QgsProcessingParameterDefinition ( const QString &  name,
const QString &  description = QString(),
const QVariant &  defaultValue = QVariant(),
bool  optional = false,
const QString &  help = QString() 
)

Constructor for QgsProcessingParameterDefinition.

Definition at line 2418 of file qgsprocessingparameters.cpp.

◆ ~QgsProcessingParameterDefinition()

virtual QgsProcessingParameterDefinition::~QgsProcessingParameterDefinition ( )
virtualdefault

Member Function Documentation

◆ additionalExpressionContextVariables()

QStringList QgsProcessingParameterDefinition::additionalExpressionContextVariables ( ) const
inline

Returns a list of additional expression context variables which are available for use when evaluating this parameter.

The additional variables will be added to the variables exposed from the usual expression context available to the parameter. They can be used to expose variables which are ONLY available to this parameter.

The returned list should contain the variable names only, without the usual "@" prefix.

See also
setAdditionalExpressionContextVariables()
Since
QGIS 3.8

Definition at line 821 of file qgsprocessingparameters.h.

◆ algorithm()

QgsProcessingAlgorithm * QgsProcessingParameterDefinition::algorithm ( ) const

Returns a pointer to the algorithm which owns this parameter.

May be nullptr for non-owned parameters.

See also
provider()

Definition at line 2927 of file qgsprocessingparameters.cpp.

◆ asPythonString()

QString QgsProcessingParameterDefinition::asPythonString ( QgsProcessing::PythonOutputType  outputType = QgsProcessing::PythonQgsProcessingAlgorithmSubclass) const
virtual

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.

Since
QGIS 3.6

Reimplemented in QgsProcessingParameterAggregate, QgsProcessingParameterDxfLayers, QgsProcessingParameterFieldMapping, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterGeometry, QgsProcessingParameterFile, QgsProcessingParameterMatrix, QgsProcessingParameterMultipleLayers, QgsProcessingParameterNumber, QgsProcessingParameterDistance, QgsProcessingParameterDuration, QgsProcessingParameterScale, QgsProcessingParameterRange, QgsProcessingParameterEnum, QgsProcessingParameterString, QgsProcessingParameterExpression, QgsProcessingParameterVectorLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterField, QgsProcessingParameterFeatureSource, QgsProcessingDestinationParameter, QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterBand, QgsProcessingParameterLayout, QgsProcessingParameterLayoutItem, QgsProcessingParameterColor, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterMapTheme, QgsProcessingParameterDateTime, QgsProcessingParameterProviderConnection, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterDatabaseTable, QgsProcessingParameterTinInputLayers, and QgsProcessingParameterVectorTileWriterLayers.

Definition at line 2876 of file qgsprocessingparameters.cpp.

◆ asScriptCode()

QString QgsProcessingParameterDefinition::asScriptCode ( ) const
virtual

◆ checkValueIsAcceptable()

bool QgsProcessingParameterDefinition::checkValueIsAcceptable ( const QVariant &  input,
QgsProcessingContext context = nullptr 
) const
virtual

Checks whether the specified input value is acceptable for the parameter.

Returns true if the value can be accepted. The optional context parameter can be specified to allow a more stringent check to be performed, capable of checking for the presence of required layers and other factors within the context.

Reimplemented in QgsProcessingParameterAggregate, QgsProcessingParameterDxfLayers, QgsProcessingParameterFieldMapping, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterPoint, QgsProcessingParameterGeometry, QgsProcessingParameterFile, QgsProcessingParameterMatrix, QgsProcessingParameterMultipleLayers, QgsProcessingParameterNumber, QgsProcessingParameterRange, QgsProcessingParameterRasterLayer, QgsProcessingParameterEnum, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterField, QgsProcessingParameterFeatureSource, QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterFolderDestination, QgsProcessingParameterBand, QgsProcessingParameterColor, QgsProcessingParameterMapTheme, QgsProcessingParameterDateTime, QgsProcessingParameterProviderConnection, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterDatabaseTable, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterTinInputLayers, and QgsProcessingParameterVectorTileWriterLayers.

Definition at line 2426 of file qgsprocessingparameters.cpp.

◆ clone()

virtual QgsProcessingParameterDefinition * QgsProcessingParameterDefinition::clone ( ) const
pure virtual

Creates a clone of the parameter definition.

Implemented in QgsProcessingParameterAggregate, QgsProcessingParameterDxfLayers, QgsProcessingParameterFieldMapping, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterBoolean, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterPoint, QgsProcessingParameterGeometry, QgsProcessingParameterFile, QgsProcessingParameterMatrix, QgsProcessingParameterMultipleLayers, QgsProcessingParameterNumber, QgsProcessingParameterDistance, QgsProcessingParameterDuration, QgsProcessingParameterScale, QgsProcessingParameterRange, QgsProcessingParameterRasterLayer, QgsProcessingParameterEnum, QgsProcessingParameterString, QgsProcessingParameterAuthConfig, QgsProcessingParameterExpression, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterField, QgsProcessingParameterFeatureSource, QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterFolderDestination, QgsProcessingParameterBand, QgsProcessingParameterLayout, QgsProcessingParameterLayoutItem, QgsProcessingParameterColor, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterMapTheme, QgsProcessingParameterDateTime, QgsProcessingParameterProviderConnection, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterDatabaseTable, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterTinInputLayers, and QgsProcessingParameterVectorTileWriterLayers.

◆ defaultValue()

QVariant QgsProcessingParameterDefinition::defaultValue ( ) const
inline

Returns the default value for the parameter.

See also
setDefaultValue()
defaultValueForGui()
guiDefaultValueOverride()

Definition at line 538 of file qgsprocessingparameters.h.

◆ defaultValueForGui()

QVariant QgsProcessingParameterDefinition::defaultValueForGui ( ) const
inline

Returns the default value to use for the parameter in a GUI.

This will be the parameter's defaultValue(), unless a guiDefaultValueOverride() is set to override that.

Since
QGIS 3.18

Definition at line 587 of file qgsprocessingparameters.h.

◆ dependsOnOtherParameters()

virtual QStringList QgsProcessingParameterDefinition::dependsOnOtherParameters ( ) const
inlinevirtual

◆ description()

QString QgsProcessingParameterDefinition::description ( ) const
inline

Returns the description for the parameter.

This is the user-visible string used to identify this parameter.

See also
setDescription()

Definition at line 501 of file qgsprocessingparameters.h.

◆ dynamicLayerParameterName()

QString QgsProcessingParameterDefinition::dynamicLayerParameterName ( ) const
inline

Returns the name of the parameter for a layer linked to a dynamic parameter, or an empty string if this is not set.

Dynamic parameters (see isDynamic()) can have an optional vector layer parameter linked to them, which indicates which layer the fields and values will be available from when evaluating the dynamic parameter.

See also
setDynamicLayerParameterName()
isDynamic()
dynamicPropertyDefinition()

Definition at line 793 of file qgsprocessingparameters.h.

◆ dynamicPropertyDefinition()

QgsPropertyDefinition QgsProcessingParameterDefinition::dynamicPropertyDefinition ( ) const
inline

Returns the property definition for dynamic properties.

See also
isDynamic()
setDynamicPropertyDefinition()
dynamicLayerParameterName()

Definition at line 772 of file qgsprocessingparameters.h.

◆ flags()

Flags QgsProcessingParameterDefinition::flags ( ) const
inline

Returns any flags associated with the parameter.

See also
setFlags()

Definition at line 593 of file qgsprocessingparameters.h.

◆ fromVariantMap()

bool QgsProcessingParameterDefinition::fromVariantMap ( const QVariantMap &  map)
virtual

◆ guiDefaultValueOverride()

QVariant QgsProcessingParameterDefinition::guiDefaultValueOverride ( ) const
inline

Returns the default value to use in the GUI for the parameter.

Usually this will return an invalid variant, which indicates that the standard defaultValue() will be used in the GUI.

See also
defaultValue()
setGuiDefaultValueOverride()
defaultValueForGui()
Since
QGIS 3.18

Definition at line 560 of file qgsprocessingparameters.h.

◆ help()

QString QgsProcessingParameterDefinition::help ( ) const
inline

Returns the help for the parameter.

This is a descriptive (possibly lengthy), translated string explaining the parameter's behavior and use in depth.

See also
setHelp()
Since
QGIS 3.16

Definition at line 519 of file qgsprocessingparameters.h.

◆ isDestination()

virtual bool QgsProcessingParameterDefinition::isDestination ( ) const
inlinevirtual

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 in QgsProcessingDestinationParameter.

Definition at line 480 of file qgsprocessingparameters.h.

◆ isDynamic()

bool QgsProcessingParameterDefinition::isDynamic ( ) const
inline

Returns true if the parameter supports is dynamic, and can support data-defined values (i.e.

QgsProperty based values).

See also
setIsDynamic()
dynamicPropertyDefinition()
dynamicLayerParameterName()

Definition at line 755 of file qgsprocessingparameters.h.

◆ metadata() [1/2]

QVariantMap & QgsProcessingParameterDefinition::metadata ( )
inline

Returns the parameter's freeform metadata.

This is mostly used by parameter widget wrappers in order to customize their appearance and behavior.

See also
setMetadata()

Definition at line 713 of file qgsprocessingparameters.h.

◆ metadata() [2/2]

QVariantMap QgsProcessingParameterDefinition::metadata ( ) const
inline

Returns the parameter's freeform metadata.

This is mostly used by parameter widget wrappers in order to customize their appearance and behavior.

See also
setMetadata()
Note
not available in Python bindings.

Definition at line 706 of file qgsprocessingparameters.h.

◆ name()

QString QgsProcessingParameterDefinition::name ( ) const
inline

Returns the name of the parameter.

This is the internal identifier by which algorithms access this parameter.

See also
setName()

Definition at line 487 of file qgsprocessingparameters.h.

◆ provider()

QgsProcessingProvider * QgsProcessingParameterDefinition::provider ( ) const

Returns a pointer to the provider for the algorithm which owns this parameter.

May be nullptr for non-owned parameters or algorithms.

See also
algorithm()

Definition at line 2932 of file qgsprocessingparameters.cpp.

◆ setAdditionalExpressionContextVariables()

void QgsProcessingParameterDefinition::setAdditionalExpressionContextVariables ( const QStringList &  variables)
inline

Sets a list of additional expression context variables which are available for use when evaluating this parameter.

The additional variables will be added to the variables exposed from the usual expression context available to the parameter. They can be used to expose variables which are ONLY available to this parameter.

The variables list should contain the variable names only, without the usual "@" prefix.

Note
Specifying variables via this method is for metadata purposes only. It is the algorithm's responsibility to correctly set the value of these additional variables in all expression context used when evaluating the parameter, in whichever way is appropriate for that particular variable.
See also
additionalExpressionContextVariables()
Since
QGIS 3.8

Definition at line 840 of file qgsprocessingparameters.h.

◆ setDefaultValue()

void QgsProcessingParameterDefinition::setDefaultValue ( const QVariant &  value)
inline

Sets the default value for the parameter.

Caller takes responsibility to ensure that value is a valid input for the parameter subclass.

See also
defaultValue()
setGuiDefaultValueOverride()

Definition at line 546 of file qgsprocessingparameters.h.

◆ setDescription()

void QgsProcessingParameterDefinition::setDescription ( const QString &  description)
inline

Sets the description for the parameter.

This is the user-visible string used to identify this parameter.

See also
description()

Definition at line 508 of file qgsprocessingparameters.h.

◆ setDynamicLayerParameterName()

void QgsProcessingParameterDefinition::setDynamicLayerParameterName ( const QString &  name)
inline

Sets the name for the parameter for a layer linked to a dynamic parameter, or an empty string if this is not set.

Dynamic parameters (see isDynamic()) can have an optional vector layer parameter linked to them, which indicates which layer the fields and values will be available from when evaluating the dynamic parameter.

See also
dynamicLayerParameterName()
isDynamic()
setDynamicPropertyDefinition()

Definition at line 806 of file qgsprocessingparameters.h.

◆ setDynamicPropertyDefinition()

void QgsProcessingParameterDefinition::setDynamicPropertyDefinition ( const QgsPropertyDefinition definition)
inline

Sets the property definition for dynamic properties.

See also
isDynamic()
dynamicPropertyDefinition()
setDynamicLayerParameterName()

Definition at line 780 of file qgsprocessingparameters.h.

◆ setFlags()

void QgsProcessingParameterDefinition::setFlags ( Flags  flags)
inline

Sets the flags associated with the parameter.

See also
flags()

Definition at line 599 of file qgsprocessingparameters.h.

◆ setGuiDefaultValueOverride()

void QgsProcessingParameterDefinition::setGuiDefaultValueOverride ( const QVariant &  value)
inline

Sets the default value to use for the parameter in GUI widgets.

Caller takes responsibility to ensure that value is a valid input for the parameter subclass.

Usually the guiDefaultValueOverride() is a invalid variant, which indicates that the standard defaultValue() should be used in the GUI. In cases where it is decided that a previous default value was inappropriate, setting a non-invalid default GUI value can be used to change the default value for the parameter shown to users when running algorithms without changing the actual defaultValue() and potentially breaking third party scripts.

See also
guiDefaultValueOverride()
setDefaultValue()
Since
QGIS 3.18

Definition at line 577 of file qgsprocessingparameters.h.

◆ setHelp()

void QgsProcessingParameterDefinition::setHelp ( const QString &  help)
inline

Sets the help for the parameter.

The help string should be a descriptive, translated string explaining the parameter's behavior and use in depth.

See also
help()
Since
QGIS 3.16

Definition at line 530 of file qgsprocessingparameters.h.

◆ setIsDynamic()

void QgsProcessingParameterDefinition::setIsDynamic ( bool  dynamic)
inline

Sets whether the parameter is dynamic, and can support data-defined values (i.e.

QgsProperty based values).

See also
isDynamic()
setDynamicPropertyDefinition()
setDynamicLayerParameterName()

Definition at line 764 of file qgsprocessingparameters.h.

◆ setMetadata()

void QgsProcessingParameterDefinition::setMetadata ( const QVariantMap &  metadata)
inline

Sets the parameter's freeform metadata.

This is mostly used by parameter widget wrappers in order to customize their appearance and behavior.

See also
metadata()

Definition at line 720 of file qgsprocessingparameters.h.

◆ setName()

void QgsProcessingParameterDefinition::setName ( const QString &  name)
inline

Sets the name of the parameter.

This is the internal identifier by which algorithms access this parameter.

See also
name()

Definition at line 494 of file qgsprocessingparameters.h.

◆ toolTip()

QString QgsProcessingParameterDefinition::toolTip ( ) const
virtual

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).

Reimplemented in QgsProcessingParameterNumber, and QgsProcessingParameterDateTime.

Definition at line 2937 of file qgsprocessingparameters.cpp.

◆ toVariantMap()

QVariantMap QgsProcessingParameterDefinition::toVariantMap ( ) const
virtual

◆ type()

virtual QString QgsProcessingParameterDefinition::type ( ) const
pure virtual

Unique parameter type name.

Implemented in QgsProcessingParameterAggregate, QgsProcessingParameterDxfLayers, QgsProcessingParameterFieldMapping, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterBoolean, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterPoint, QgsProcessingParameterGeometry, QgsProcessingParameterFile, QgsProcessingParameterMatrix, QgsProcessingParameterMultipleLayers, QgsProcessingParameterNumber, QgsProcessingParameterDistance, QgsProcessingParameterDuration, QgsProcessingParameterScale, QgsProcessingParameterRange, QgsProcessingParameterRasterLayer, QgsProcessingParameterEnum, QgsProcessingParameterString, QgsProcessingParameterAuthConfig, QgsProcessingParameterExpression, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterField, QgsProcessingParameterFeatureSource, QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterFolderDestination, QgsProcessingParameterBand, QgsProcessingParameterLayout, QgsProcessingParameterLayoutItem, QgsProcessingParameterColor, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterMapTheme, QgsProcessingParameterDateTime, QgsProcessingParameterProviderConnection, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterDatabaseTable, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterTinInputLayers, and QgsProcessingParameterVectorTileWriterLayers.

◆ valueAsJsonObject()

QVariant QgsProcessingParameterDefinition::valueAsJsonObject ( const QVariant &  value,
QgsProcessingContext context 
) const
virtual

Returns a version of the parameter input value, which is suitable for use in a JSON object.

This method must return only simple values which can be losslessly encapsulated in a serialized JSON map. For instance, any QGIS class values (such as QgsCoordinateReferenceSystem) must be converted to a simple string or numeric value equivalent.

See also
valueAsPythonString()
valueAsString()
Since
QGIS 3.24

Reimplemented in QgsProcessingParameterDxfLayers, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterMultipleLayers, QgsProcessingParameterRasterLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterFeatureSource, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, and QgsProcessingParameterTinInputLayers.

Definition at line 2449 of file qgsprocessingparameters.cpp.

◆ valueAsJsonObjectPrivate()

QVariant QgsProcessingParameterDefinition::valueAsJsonObjectPrivate ( const QVariant &  value,
QgsProcessingContext context,
ValueAsStringFlags  flags 
) const
protected

Internal method for evaluating values as JSON objects.

Note
Not available in Python bindings
Since
QGIS 3.28

Definition at line 2454 of file qgsprocessingparameters.cpp.

◆ valueAsPythonComment()

QString QgsProcessingParameterDefinition::valueAsPythonComment ( const QVariant &  value,
QgsProcessingContext context 
) const
virtual

Returns a Python comment explaining a parameter value, or an empty string if no comment is required.

Since
QGIS 3.20

Reimplemented in QgsProcessingParameterEnum.

Definition at line 2861 of file qgsprocessingparameters.cpp.

◆ valueAsPythonString()

QString QgsProcessingParameterDefinition::valueAsPythonString ( const QVariant &  value,
QgsProcessingContext context 
) const
virtual

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.

See also
valueAsJsonObject()
valueAsString()

Reimplemented in QgsProcessingParameterAggregate, QgsProcessingParameterDxfLayers, QgsProcessingParameterFieldMapping, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterBoolean, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterPoint, QgsProcessingParameterGeometry, QgsProcessingParameterMatrix, QgsProcessingParameterMultipleLayers, QgsProcessingParameterNumber, QgsProcessingParameterRange, QgsProcessingParameterRasterLayer, QgsProcessingParameterEnum, QgsProcessingParameterString, QgsProcessingParameterAuthConfig, QgsProcessingParameterExpression, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterField, QgsProcessingParameterFeatureSource, QgsProcessingParameterFeatureSink, QgsProcessingParameterVectorDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterBand, QgsProcessingParameterLayout, QgsProcessingParameterLayoutItem, QgsProcessingParameterColor, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterMapTheme, QgsProcessingParameterDateTime, QgsProcessingParameterProviderConnection, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterDatabaseTable, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterTinInputLayers, and QgsProcessingParameterVectorTileWriterLayers.

Definition at line 2438 of file qgsprocessingparameters.cpp.

◆ valueAsString()

QString QgsProcessingParameterDefinition::valueAsString ( const QVariant &  value,
QgsProcessingContext context,
bool &  ok 
) const
virtual

Returns a string version of the parameter input value (if possible).

Parameters
valuevalue to convert
contextprocessing context
okwill be set to true if value could be represented as a string.
Returns
value converted to string
See also
valueAsStringList()
valueAsJsonObject()
valueAsPythonString()
Since
QGIS 3.24

Reimplemented in QgsProcessingParameterDxfLayers, QgsProcessingParameterCrs, QgsProcessingParameterExtent, QgsProcessingParameterMultipleLayers, QgsProcessingParameterRasterLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterMapLayer, QgsProcessingParameterFeatureSource, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterAnnotationLayer, and QgsProcessingParameterTinInputLayers.

Definition at line 2655 of file qgsprocessingparameters.cpp.

◆ valueAsStringList()

QStringList QgsProcessingParameterDefinition::valueAsStringList ( const QVariant &  value,
QgsProcessingContext context,
bool &  ok 
) const
virtual

Returns a string list version of the parameter input value (if possible).

Parameters
valuevalue to convert
contextprocessing context
okwill be set to true if value could be represented as a string list
Returns
value converted to string list
See also
valueAsString()
valueAsJsonObject()
valueAsPythonString()
Since
QGIS 3.24

Definition at line 2836 of file qgsprocessingparameters.cpp.

◆ valueAsStringPrivate()

QString QgsProcessingParameterDefinition::valueAsStringPrivate ( const QVariant &  value,
QgsProcessingContext context,
bool &  ok,
ValueAsStringFlags  flags 
) const
protected

Internal method for evaluating values as string.

Note
Not available in Python bindings
Since
QGIS 3.28

Definition at line 2660 of file qgsprocessingparameters.cpp.

Friends And Related Function Documentation

◆ QgsProcessingAlgorithm

friend class QgsProcessingAlgorithm
friend

Definition at line 916 of file qgsprocessingparameters.h.

Member Data Documentation

◆ mAdditionalExpressionVariables

QStringList QgsProcessingParameterDefinition::mAdditionalExpressionVariables
protected

Additional expression context variables exposed for use by this parameter.

Definition at line 913 of file qgsprocessingparameters.h.

◆ mAlgorithm

QgsProcessingAlgorithm* QgsProcessingParameterDefinition::mAlgorithm = nullptr
protected

Pointer to algorithm which owns this parameter.

Definition at line 901 of file qgsprocessingparameters.h.

◆ mDefault

QVariant QgsProcessingParameterDefinition::mDefault
protected

Default value for parameter.

Definition at line 889 of file qgsprocessingparameters.h.

◆ mDescription

QString QgsProcessingParameterDefinition::mDescription
protected

Parameter description.

Definition at line 883 of file qgsprocessingparameters.h.

◆ mDynamicLayerParameterName

QString QgsProcessingParameterDefinition::mDynamicLayerParameterName
protected

Linked vector layer parameter name for dynamic properties.

Definition at line 910 of file qgsprocessingparameters.h.

◆ mFlags

Flags QgsProcessingParameterDefinition::mFlags
protected

Parameter flags.

Definition at line 895 of file qgsprocessingparameters.h.

◆ mGuiDefault

QVariant QgsProcessingParameterDefinition::mGuiDefault
protected

Default value for parameter in GUI.

Definition at line 892 of file qgsprocessingparameters.h.

◆ mHelp

QString QgsProcessingParameterDefinition::mHelp
protected

Parameter help.

Definition at line 886 of file qgsprocessingparameters.h.

◆ mIsDynamic

bool QgsProcessingParameterDefinition::mIsDynamic = false
protected

True for dynamic parameters, which can have data-defined (QgsProperty) based values.

Definition at line 904 of file qgsprocessingparameters.h.

◆ mMetadata

QVariantMap QgsProcessingParameterDefinition::mMetadata
protected

Freeform metadata for parameter. Mostly used by widget wrappers to customize their appearance and behavior.

Definition at line 898 of file qgsprocessingparameters.h.

◆ mName

QString QgsProcessingParameterDefinition::mName
protected

Parameter name.

Definition at line 880 of file qgsprocessingparameters.h.

◆ mPropertyDefinition

QgsPropertyDefinition QgsProcessingParameterDefinition::mPropertyDefinition
protected

Data defined property definition.

Definition at line 907 of file qgsprocessingparameters.h.


The documentation for this class was generated from the following files: