QgsProcessingParameterFileDestination class

A generic file based destination parameter, for specifying the destination path for a file (non-map layer) created by the algorithm.

Base classes

class QgsProcessingDestinationParameter
Base class for all parameter definitions which represent file or layer destinations, e.g.

Public static functions

static auto fromScriptCode(const QString& name, const QString& description, bool isOptional, const QString& definition) -> QgsProcessingParameterFileDestination*
Creates a new parameter using the definition from a script code.
static auto typeName() -> QString
Returns the type name for the parameter class.

Constructors, destructors, conversion operators

QgsProcessingParameterFileDestination(const QString& name, const QString& description = QString(), const QString& fileFilter = QString(), const QVariant& defaultValue = QVariant(), bool optional = false, bool createByDefault = true)
Constructor for QgsProcessingParameterFileDestination.

Public functions

auto checkValueIsAcceptable(const QVariant& input, QgsProcessingContext* context = nullptr) const -> bool override
Checks whether the specified input value is acceptable for the parameter.
auto clone() const -> QgsProcessingParameterDefinition* override
Creates a clone of the parameter definition.
auto defaultFileExtension() const -> QString override
Returns the default file extension for destination file paths associated with this parameter.
auto fileFilter() const -> QString
Returns the file filter string for file destinations compatible with this parameter.
auto fromVariantMap(const QVariantMap& map) -> bool override
Restores this parameter to a QVariantMap.
void setFileFilter(const QString& filter)
Sets the file filter string for file destinations compatible with this parameter.
auto toOutputDefinition() const -> QgsProcessingOutputDefinition* override
Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parameter.
auto toVariantMap() const -> QVariantMap override
Saves this parameter to a QVariantMap.
auto type() const -> QString override
Unique parameter type name.
auto valueAsPythonString(const QVariant& value, QgsProcessingContext& context) const -> QString override
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.

Function documentation

QgsProcessingParameterFileDestination::QgsProcessingParameterFileDestination(const QString& name, const QString& description = QString(), const QString& fileFilter = QString(), const QVariant& defaultValue = QVariant(), bool optional = false, bool createByDefault = true)

Constructor for QgsProcessingParameterFileDestination.

If createByDefault is false and the parameter is optional, then this destination output will not be created by default.

bool QgsProcessingParameterFileDestination::checkValueIsAcceptable(const QVariant& input, QgsProcessingContext* context = nullptr) const override

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.

QString QgsProcessingParameterFileDestination::fileFilter() const

Returns the file filter string for file destinations compatible with this parameter.

bool QgsProcessingParameterFileDestination::fromVariantMap(const QVariantMap& map) override

Restores this parameter to a QVariantMap.

Subclasses should ensure that they call the base class method.

void QgsProcessingParameterFileDestination::setFileFilter(const QString& filter)

Sets the file filter string for file destinations compatible with this parameter.

QVariantMap QgsProcessingParameterFileDestination::toVariantMap() const override

Saves this parameter to a QVariantMap.

Subclasses should ensure that they call the base class method and then extend the result with additional properties.

QString QgsProcessingParameterFileDestination::valueAsPythonString(const QVariant& value, QgsProcessingContext& context) const override

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.

The returned value must be correctly escaped - e.g. string values must be wrapped in ' 's.