QGIS/python/core/processing/qgsprocessingprovider.sip
Nyall Dawson bb24dfe245 [processing] c++ base class for providers
Nothing particularly exciting here yet, but this commit
moves the definition of the provider base class to a c++
QgsProcessingProvider abstract base class.

As part of this some existing python methods were renamed
to make their use clearer and to fit with the QGIS c++
api conventions:

- getName was renamed to id
- getDescription was renamed to name
- getIcon was renamed to icon

These API breaks are documented
2017-01-11 10:55:15 +10:00

50 lines
1.3 KiB
Plaintext

/**
* \class QgsProcessingProvider
* \ingroup core
* Abstract base class for processing providers. An algorithm provider is a set of
* related algorithms, typically from the same external application or related
* to a common area of analysis.
* \note added in QGIS 3.0
*/
class QgsProcessingProvider
{
%TypeHeaderCode
#include <qgsprocessingprovider.h>
%End
public:
QgsProcessingProvider();
virtual ~QgsProcessingProvider();
/**
* Returns an icon for the provider.
*/
virtual QIcon icon() const;
/**
* Returns the unique provider id, used for identifying the provider. This string
* should be a unique, short, character only string, eg "qgis" or "gdal". This
* string should not be localised.
* @see name()
*/
virtual QString id() const = 0;
/**
* Returns the full provider name, which is used to describe the provider within the GUI.
* This string should be localised.
* @see id()
*/
virtual QString name() const = 0;
virtual bool canBeActivated() const;
private:
//! Providers cannot be copied
QgsProcessingProvider( const QgsProcessingProvider& other );
//! Providers cannot be copied
//QgsProcessingProvider& operator=( const QgsProcessingProvider& other );
};