QGIS API Documentation  3.11.0-Master (68611307d7)
Public Member Functions | Static Public Member Functions | List of all members
QgsProcessingParameterVectorDestination Class Reference

A vector layer destination parameter, for specifying the destination path for a vector layer created by the algorithm. More...

#include <qgsprocessingparameters.h>

Inheritance diagram for QgsProcessingParameterVectorDestination:
Inheritance graph
[legend]

Public Member Functions

 QgsProcessingParameterVectorDestination (const QString &name, const QString &description=QString(), QgsProcessing::SourceType type=QgsProcessing::TypeVectorAnyGeometry, const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
 Constructor for QgsProcessingParameterVectorDestination. More...
 
QString asPythonString (QgsProcessing::PythonOutputType outputType=QgsProcessing::PythonQgsProcessingAlgorithmSubclass) const override
 Returns the parameter definition as a Python command which can be used within a Python Processing script. More...
 
QString asScriptCode () const override
 Returns the parameter definition encoded in a string which can be used within a Processing script. More...
 
bool checkValueIsAcceptable (const QVariant &input, QgsProcessingContext *context=nullptr) const override
 Checks whether the specified input value is acceptable for the parameter. More...
 
QgsProcessingParameterDefinitionclone () const override
 Creates a clone of the parameter definition. More...
 
QgsProcessing::SourceType dataType () const
 Returns the layer type for this created vector layer. More...
 
QString defaultFileExtension () const override
 Returns the default file extension for destination file paths associated with this parameter. More...
 
bool fromVariantMap (const QVariantMap &map) override
 Restores this parameter to a QVariantMap. More...
 
bool hasGeometry () const
 Returns true if the created layer is likely to include geometries. More...
 
void setDataType (QgsProcessing::SourceType type)
 Sets the layer type for the created vector layer. More...
 
virtual QStringList supportedOutputVectorLayerExtensions () const
 Returns a list of the vector format file extensions supported by this parameter. More...
 
QgsProcessingOutputDefinitiontoOutputDefinition () const override
 Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parameter. More...
 
QVariantMap toVariantMap () const override
 Saves this parameter to a QVariantMap. More...
 
QString type () const override
 Unique parameter type name. More...
 
QString 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. More...
 
- Public Member Functions inherited from QgsProcessingDestinationParameter
 QgsProcessingDestinationParameter (const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false, bool createByDefault=true)
 Constructor for QgsProcessingDestinationParameter. More...
 
bool createByDefault () const
 Returns true if the destination should be created by default. More...
 
virtual QString generateTemporaryDestination () const
 Generates a temporary destination value for this parameter. More...
 
bool isDestination () const override
 Returns true if this parameter represents a file or layer destination, e.g. More...
 
void setCreateByDefault (bool createByDefault)
 Sets whether the destination should be created by default. More...
 
void setSupportsNonFileBasedOutput (bool supportsNonFileBasedOutput)
 Sets whether the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs. More...
 
bool supportsNonFileBasedOutput () const
 Returns true if the destination parameter supports non filed-based outputs, such as memory layers or direct database outputs. More...
 
- Public Member Functions inherited from QgsProcessingParameterDefinition
 QgsProcessingParameterDefinition (const QString &name, const QString &description=QString(), const QVariant &defaultValue=QVariant(), bool optional=false)
 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...
 
QVariant defaultValue () const
 Returns the default value for the parameter. 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...
 
bool isDynamic () const
 Returns true if the parameter supports is dynamic, and can support data-defined values (i.e. More...
 
QVariantMap metadata () const
 Returns the parameter's freeform metadata. More...
 
QVariantMap & metadata ()
 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 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...
 

Static Public Member Functions

static QgsProcessingParameterVectorDestinationfromScriptCode (const QString &name, const QString &description, bool isOptional, const QString &definition)
 Creates a new parameter using the definition from a script code. More...
 
static QString typeName ()
 Returns the type name for the parameter class. More...
 

Additional Inherited Members

- Public Types inherited from QgsProcessingParameterDefinition
enum  Flag { FlagAdvanced = 1 << 1, FlagHidden = 1 << 2, FlagOptional = 1 << 3, FlagIsModelOutput = 1 << 4 }
 Parameter flags. More...
 
- Protected Member Functions inherited from QgsProcessingDestinationParameter
QgsProcessingProvideroriginalProvider () const
 Original (source) provider which this parameter has been derived from. More...
 
- Protected Attributes inherited from QgsProcessingParameterDefinition
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...
 
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...
 

Detailed Description

A vector layer destination parameter, for specifying the destination path for a vector layer created by the algorithm.

Note
Consider using the more flexible QgsProcessingParameterFeatureSink wherever possible.
Since
QGIS 3.0

Definition at line 2576 of file qgsprocessingparameters.h.

Constructor & Destructor Documentation

◆ QgsProcessingParameterVectorDestination()

QgsProcessingParameterVectorDestination::QgsProcessingParameterVectorDestination ( const QString &  name,
const QString &  description = QString(),
QgsProcessing::SourceType  type = QgsProcessing::TypeVectorAnyGeometry,
const QVariant &  defaultValue = QVariant(),
bool  optional = false,
bool  createByDefault = true 
)

Constructor for QgsProcessingParameterVectorDestination.

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

Definition at line 5035 of file qgsprocessingparameters.cpp.

Member Function Documentation

◆ asPythonString()

QString QgsProcessingParameterVectorDestination::asPythonString ( QgsProcessing::PythonOutputType  outputType = QgsProcessing::PythonQgsProcessingAlgorithmSubclass) const
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.

Since
QGIS 3.6

Reimplemented from QgsProcessingDestinationParameter.

Definition at line 5162 of file qgsprocessingparameters.cpp.

◆ asScriptCode()

QString QgsProcessingParameterVectorDestination::asScriptCode ( ) const
overridevirtual

Returns the parameter definition encoded in a string which can be used within a Processing script.

Reimplemented from QgsProcessingParameterDefinition.

Definition at line 5105 of file qgsprocessingparameters.cpp.

◆ checkValueIsAcceptable()

bool QgsProcessingParameterVectorDestination::checkValueIsAcceptable ( const QVariant &  input,
QgsProcessingContext context = nullptr 
) const
overridevirtual

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 from QgsProcessingParameterDefinition.

Definition at line 5047 of file qgsprocessingparameters.cpp.

◆ clone()

QgsProcessingParameterDefinition * QgsProcessingParameterVectorDestination::clone ( ) const
overridevirtual

Creates a clone of the parameter definition.

Implements QgsProcessingParameterDefinition.

Definition at line 5042 of file qgsprocessingparameters.cpp.

◆ dataType()

QgsProcessing::SourceType QgsProcessingParameterVectorDestination::dataType ( ) const

Returns the layer type for this created vector layer.

See also
setDataType()

Definition at line 5206 of file qgsprocessingparameters.cpp.

◆ defaultFileExtension()

QString QgsProcessingParameterVectorDestination::defaultFileExtension ( ) const
overridevirtual

Returns the default file extension for destination file paths associated with this parameter.

Implements QgsProcessingDestinationParameter.

Definition at line 5139 of file qgsprocessingparameters.cpp.

◆ fromScriptCode()

QgsProcessingParameterVectorDestination * QgsProcessingParameterVectorDestination::fromScriptCode ( const QString &  name,
const QString &  description,
bool  isOptional,
const QString &  definition 
)
static

Creates a new parameter using the definition from a script code.

Definition at line 5250 of file qgsprocessingparameters.cpp.

◆ fromVariantMap()

bool QgsProcessingParameterVectorDestination::fromVariantMap ( const QVariantMap &  map)
overridevirtual

Restores this parameter to a QVariantMap.

Subclasses should ensure that they call the base class method.

See also
toVariantMap()

Reimplemented from QgsProcessingDestinationParameter.

Definition at line 5243 of file qgsprocessingparameters.cpp.

◆ hasGeometry()

bool QgsProcessingParameterVectorDestination::hasGeometry ( ) const

Returns true if the created layer is likely to include geometries.

In cases were presence of geometry cannot be reliably determined in advance, this method will default to returning true.

Definition at line 5211 of file qgsprocessingparameters.cpp.

◆ setDataType()

void QgsProcessingParameterVectorDestination::setDataType ( QgsProcessing::SourceType  type)

Sets the layer type for the created vector layer.

See also
dataType()

Definition at line 5231 of file qgsprocessingparameters.cpp.

◆ supportedOutputVectorLayerExtensions()

QStringList QgsProcessingParameterVectorDestination::supportedOutputVectorLayerExtensions ( ) const
virtual

Returns a list of the vector format file extensions supported by this parameter.

See also
defaultFileExtension()
Since
QGIS 3.2

Definition at line 5184 of file qgsprocessingparameters.cpp.

◆ toOutputDefinition()

QgsProcessingOutputDefinition * QgsProcessingParameterVectorDestination::toOutputDefinition ( ) const
overridevirtual

Returns a new QgsProcessingOutputDefinition corresponding to the definition of the destination parameter.

Implements QgsProcessingDestinationParameter.

Definition at line 5134 of file qgsprocessingparameters.cpp.

◆ toVariantMap()

QVariantMap QgsProcessingParameterVectorDestination::toVariantMap ( ) const
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.

See also
fromVariantMap()

Reimplemented from QgsProcessingDestinationParameter.

Definition at line 5236 of file qgsprocessingparameters.cpp.

◆ type()

QString QgsProcessingParameterVectorDestination::type ( ) const
inlineoverridevirtual

Unique parameter type name.

Implements QgsProcessingParameterDefinition.

Definition at line 2594 of file qgsprocessingparameters.h.

◆ typeName()

static QString QgsProcessingParameterVectorDestination::typeName ( )
inlinestatic

Returns the type name for the parameter class.

Definition at line 2592 of file qgsprocessingparameters.h.

◆ valueAsPythonString()

QString QgsProcessingParameterVectorDestination::valueAsPythonString ( const QVariant &  value,
QgsProcessingContext context 
) const
overridevirtual

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.

Reimplemented from QgsProcessingParameterDefinition.

Definition at line 5081 of file qgsprocessingparameters.cpp.


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