QGIS API Documentation  3.37.0-Master (a5b4d9743e8)
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 class  ValueAsStringFlag : int { AllowMapLayerValues = 1 << 0 }
 Flags for passing to the valueAsStringPrivate() method. More...
 
typedef QFlags< ValueAsStringFlagValueAsStringFlags
 

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::PythonOutputType::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...
 
Qgis::ProcessingParameterFlags 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 (Qgis::ProcessingParameterFlags 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 defaultGuiValueFromSetting () const
 Default gui value for an algorithm parameter from settings. More...
 
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...
 
Qgis::ProcessingParameterFlags 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.

Definition at line 333 of file qgsprocessingparameters.h.

Member Typedef Documentation

◆ ValueAsStringFlags

Definition at line 849 of file qgsprocessingparameters.h.

Member Enumeration Documentation

◆ 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 845 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 2448 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 815 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 2985 of file qgsprocessingparameters.cpp.

◆ asPythonString()

QString QgsProcessingParameterDefinition::asPythonString ( QgsProcessing::PythonOutputType  outputType = QgsProcessing::PythonOutputType::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 QgsProcessingParameterVectorTileWriterLayers, QgsProcessingParameterTinInputLayers, QgsProcessingParameterPointCloudAttribute, QgsProcessingParameterDatabaseTable, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterProviderConnection, QgsProcessingParameterDateTime, QgsProcessingParameterMapTheme, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterColor, QgsProcessingParameterLayoutItem, QgsProcessingParameterLayout, QgsProcessingParameterBand, QgsProcessingParameterFileDestination, QgsProcessingParameterVectorDestination, QgsProcessingParameterFeatureSink, QgsProcessingDestinationParameter, QgsProcessingParameterFeatureSource, QgsProcessingParameterField, QgsProcessingParameterMapLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterExpression, QgsProcessingParameterString, QgsProcessingParameterEnum, QgsProcessingParameterRange, QgsProcessingParameterScale, QgsProcessingParameterDuration, QgsProcessingParameterDistance, QgsProcessingParameterNumber, QgsProcessingParameterMultipleLayers, QgsProcessingParameterMatrix, QgsProcessingParameterFile, QgsProcessingParameterGeometry, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterFieldMapping, QgsProcessingParameterDxfLayers, QgsProcessingParameterAlignRasterLayers, and QgsProcessingParameterAggregate.

Definition at line 2934 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 QgsProcessingParameterVectorTileWriterLayers, QgsProcessingParameterTinInputLayers, QgsProcessingParameterVectorTileDestination, QgsProcessingParameterPointCloudAttribute, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterDatabaseTable, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterProviderConnection, QgsProcessingParameterDateTime, QgsProcessingParameterMapTheme, QgsProcessingParameterColor, QgsProcessingParameterBand, QgsProcessingParameterFolderDestination, QgsProcessingParameterFileDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterVectorDestination, QgsProcessingParameterFeatureSink, QgsProcessingParameterFeatureSource, QgsProcessingParameterField, QgsProcessingParameterMapLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterEnum, QgsProcessingParameterRasterLayer, QgsProcessingParameterRange, QgsProcessingParameterNumber, QgsProcessingParameterMultipleLayers, QgsProcessingParameterMatrix, QgsProcessingParameterFile, QgsProcessingParameterGeometry, QgsProcessingParameterPoint, QgsProcessingParameterExtent, QgsProcessingParameterCrs, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterFieldMapping, QgsProcessingParameterDxfLayers, QgsProcessingParameterAlignRasterLayers, and QgsProcessingParameterAggregate.

Definition at line 2490 of file qgsprocessingparameters.cpp.

◆ clone()

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

Creates a clone of the parameter definition.

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

◆ defaultGuiValueFromSetting()

QVariant QgsProcessingParameterDefinition::defaultGuiValueFromSetting ( ) const
protected

Default gui value for an algorithm parameter from settings.

Returns
default value from settings or invalid QVariant if there is no default value defined in the settings
Since
QGIS 3.34

Definition at line 2476 of file qgsprocessingparameters.cpp.

◆ defaultValue()

QVariant QgsProcessingParameterDefinition::defaultValue ( ) const
inline

Returns the default value for the parameter.

See also
setDefaultValue()
defaultValueForGui()
guiDefaultValueOverride()

Definition at line 532 of file qgsprocessingparameters.h.

◆ defaultValueForGui()

QVariant QgsProcessingParameterDefinition::defaultValueForGui ( ) const

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 2466 of file qgsprocessingparameters.cpp.

◆ 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 495 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 787 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 766 of file qgsprocessingparameters.h.

◆ flags()

Qgis::ProcessingParameterFlags QgsProcessingParameterDefinition::flags ( ) const
inline

Returns any flags associated with the parameter.

See also
setFlags()

Definition at line 587 of file qgsprocessingparameters.h.

◆ fromVariantMap()

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

◆ guiDefaultValueOverride()

QVariant QgsProcessingParameterDefinition::guiDefaultValueOverride ( ) const

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 2456 of file qgsprocessingparameters.cpp.

◆ 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 513 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 474 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 749 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 707 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 700 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 481 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 2990 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 834 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 540 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 502 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 800 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 774 of file qgsprocessingparameters.h.

◆ setFlags()

void QgsProcessingParameterDefinition::setFlags ( Qgis::ProcessingParameterFlags  flags)
inline

Sets the flags associated with the parameter.

See also
flags()

Definition at line 593 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 571 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 524 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 758 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 714 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 488 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 QgsProcessingParameterDateTime, and QgsProcessingParameterNumber.

Definition at line 2995 of file qgsprocessingparameters.cpp.

◆ toVariantMap()

QVariantMap QgsProcessingParameterDefinition::toVariantMap ( ) const
virtual

◆ type()

virtual QString QgsProcessingParameterDefinition::type ( ) const
pure virtual

Unique parameter type name.

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

◆ 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 QgsProcessingParameterTinInputLayers, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterFeatureSource, QgsProcessingParameterMapLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterRasterLayer, QgsProcessingParameterMultipleLayers, QgsProcessingParameterExtent, QgsProcessingParameterCrs, QgsProcessingParameterDxfLayers, and QgsProcessingParameterAlignRasterLayers.

Definition at line 2513 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 2518 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 2919 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 QgsProcessingParameterVectorTileWriterLayers, QgsProcessingParameterTinInputLayers, QgsProcessingParameterVectorTileDestination, QgsProcessingParameterPointCloudAttribute, QgsProcessingParameterPointCloudDestination, QgsProcessingParameterAnnotationLayer, QgsProcessingParameterPointCloudLayer, QgsProcessingParameterDatabaseTable, QgsProcessingParameterDatabaseSchema, QgsProcessingParameterProviderConnection, QgsProcessingParameterDateTime, QgsProcessingParameterMapTheme, QgsProcessingParameterCoordinateOperation, QgsProcessingParameterColor, QgsProcessingParameterLayoutItem, QgsProcessingParameterLayout, QgsProcessingParameterBand, QgsProcessingParameterFileDestination, QgsProcessingParameterRasterDestination, QgsProcessingParameterVectorDestination, QgsProcessingParameterFeatureSink, QgsProcessingParameterFeatureSource, QgsProcessingParameterField, QgsProcessingParameterMapLayer, QgsProcessingParameterMeshLayer, QgsProcessingParameterVectorLayer, QgsProcessingParameterExpression, QgsProcessingParameterAuthConfig, QgsProcessingParameterString, QgsProcessingParameterEnum, QgsProcessingParameterRasterLayer, QgsProcessingParameterRange, QgsProcessingParameterNumber, QgsProcessingParameterMultipleLayers, QgsProcessingParameterMatrix, QgsProcessingParameterGeometry, QgsProcessingParameterPoint, QgsProcessingParameterExtent, QgsProcessingParameterCrs, QgsProcessingParameterBoolean, QgsProcessingParameterMeshDatasetTime, QgsProcessingParameterMeshDatasetGroups, QgsProcessingParameterFieldMapping, QgsProcessingParameterDxfLayers, QgsProcessingParameterAlignRasterLayers, and QgsProcessingParameterAggregate.

Definition at line 2502 of file qgsprocessingparameters.cpp.

◆ valueAsString()

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

◆ 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 2894 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 2721 of file qgsprocessingparameters.cpp.

Friends And Related Function Documentation

◆ QgsProcessingAlgorithm

friend class QgsProcessingAlgorithm
friend

Definition at line 918 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 915 of file qgsprocessingparameters.h.

◆ mAlgorithm

QgsProcessingAlgorithm* QgsProcessingParameterDefinition::mAlgorithm = nullptr
protected

Pointer to algorithm which owns this parameter.

Definition at line 903 of file qgsprocessingparameters.h.

◆ mDefault

QVariant QgsProcessingParameterDefinition::mDefault
protected

Default value for parameter.

Definition at line 891 of file qgsprocessingparameters.h.

◆ mDescription

QString QgsProcessingParameterDefinition::mDescription
protected

Parameter description.

Definition at line 885 of file qgsprocessingparameters.h.

◆ mDynamicLayerParameterName

QString QgsProcessingParameterDefinition::mDynamicLayerParameterName
protected

Linked vector layer parameter name for dynamic properties.

Definition at line 912 of file qgsprocessingparameters.h.

◆ mFlags

Qgis::ProcessingParameterFlags QgsProcessingParameterDefinition::mFlags
protected

Parameter flags.

Definition at line 897 of file qgsprocessingparameters.h.

◆ mGuiDefault

QVariant QgsProcessingParameterDefinition::mGuiDefault
protected

Default value for parameter in GUI.

Definition at line 894 of file qgsprocessingparameters.h.

◆ mHelp

QString QgsProcessingParameterDefinition::mHelp
protected

Parameter help.

Definition at line 888 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 906 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 900 of file qgsprocessingparameters.h.

◆ mName

QString QgsProcessingParameterDefinition::mName
protected

Parameter name.

Definition at line 882 of file qgsprocessingparameters.h.

◆ mPropertyDefinition

QgsPropertyDefinition QgsProcessingParameterDefinition::mPropertyDefinition
protected

Data defined property definition.

Definition at line 909 of file qgsprocessingparameters.h.


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