189      PriorityForUri = 1 << 0, 
 
  190      LayerTypesForUri = 1 << 1, 
 
  191      QuerySublayers = 1 << 2, 
 
  192      CreateDatabase = 1 << 3, 
 
 
  203      FileBasedUris = 1 << 0, 
 
  204      SaveLayerMetadata = 1 << 1, 
 
  205      ParallelCreateProvider = 1 << 2, 
 
 
  220    QgsProviderMetadata( const QString &key, const QString &description, const QString &library = QString() );
 
  243    QString description() const;
 
  250    virtual QIcon icon() const;
 
  272    virtual QList< Qgis::LayerType > supportedLayerTypes() 
const;
 
  274    SIP_PYOBJECT supportedLayerTypes() const 
SIP_TYPEHINT( List[
Qgis.LayerType] );
 
  278    const QList< 
Qgis::LayerType > cppRes = sipCpp->supportedLayerTypes();
 
  280    PyObject *l = PyList_New( cppRes.size() );
 
  286      for ( 
int i = 0; i < cppRes.size(); ++i )
 
  288        PyObject *eobj = sipConvertFromEnum( 
static_cast<int>( cppRes.at( i ) ),
 
  289                                             sipType_Qgis_LayerType );
 
  296        PyList_SetItem( l, i, eobj );
 
  326    SIP_SKIP Q_DECL_DEPRECATED CreateDataProviderFunction createFunction() const;
 
  332    virtual 
void initProvider();
 
  338    virtual 
void cleanupProvider();
 
  347    virtual QString filters( 
Qgis::FileFilterType type );
 
  371    virtual 
int priorityForUri( const QString &uri ) const;
 
  383    virtual QList< 
Qgis::LayerType > validLayerTypesForUri( const QString &uri ) const;
 
  401    virtual 
bool uriIsBlocklisted( const QString &uri ) const;
 
  424    virtual QStringList sidecarFilesForUri( const QString &uri ) const;
 
  450    virtual QString suggestGroupNameForUri( const QString &uri ) const;
 
  471    static 
void setBoolParameter( QVariantMap &uri, const QString ¶meter, const QVariant &value );
 
  479    static 
bool boolParameter( const QVariantMap &uri, const QString ¶meter, 
bool defaultValue = false );
 
  499        QMap<int, int> &oldToNewAttrIdxMap,
 
  500        QString &errorMessage,
 
  501        const QMap<QString, QVariant> *options,
 
  502        QString &createdLayerUri );
 
  520    virtual bool createDatabase( 
const QString &uri, QString &errorMessage 
SIP_OUT );
 
  530      const QString &format,
 
  535      double *geoTransform,
 
  537      const QStringList &createOptions = QStringList() ) 
SIP_FACTORY;
 
  544    virtual 
bool createMeshData(
 
  546      const QString &fileName,
 
  547      const QString &driverName,
 
  549      const QMap<QString, QString> &metadata = QMap<QString, QString>() ) const;
 
  556    virtual 
bool createMeshData(
 
  560      const QMap<QString, QString> &metadata = QMap<QString, QString>() ) const;
 
  566    virtual QList<QPair<QString, QString> > pyramidResamplingMethods();
 
  585    virtual QVariantMap decodeUri( const QString &uri ) const;
 
  595    virtual QString encodeUri( const QVariantMap &parts ) const;
 
  608    virtual QString absoluteToRelativeUri( const QString &uri, const 
QgsReadWriteContext &context ) const;
 
  621    virtual QString relativeToAbsoluteUri( const QString &uri, const 
QgsReadWriteContext &context ) const;
 
  628    virtual QString cleanUri( const QString &uri, 
Qgis::UriCleaningFlags flags = 
Qgis::UriCleaningFlag::RemoveCredentials ) const;
 
  643    virtual 
int listStyles( const QString &uri, QStringList &ids, QStringList &names,
 
  644                            QStringList &descriptions, QString &errCause );
 
  657    virtual 
bool styleExists( const QString &uri, const QString &styleId, QString &errorCause 
SIP_OUT );
 
  666    virtual QString getStyleById( const QString &uri, const QString &styleId, QString &errCause );
 
  672    virtual 
bool deleteStyleById( const QString &uri, const QString &styleId, QString &errCause );
 
  685    virtual 
bool saveStyle( const QString &uri, const QString &qmlStyle, const QString &sldStyle,
 
  686                            const QString &styleName, const QString &styleDescription,
 
  687                            const QString &uiFileContent, 
bool useAsDefault, QString &errCause );
 
  693    virtual QString loadStyle( const QString &uri, QString &errCause );
 
  703    virtual QString loadStoredStyle( const QString &uri, QString &styleName, QString &errCause );
 
  725    virtual 
bool createDb( const QString &dbPath, QString &errCause );
 
  775    template <
typename T> QMap<QString, T *>connections( 
bool cached = 
true );
 
  817    SIP_PYOBJECT __repr__();
 
  819    QString str = QStringLiteral( 
"<QgsProviderMetadata: %1>" ).arg( sipCpp->key() );
 
  820    sipRes = PyUnicode_FromString( str.toUtf8().constData() );
 
  861    template <
class T_prov
ider_conn, 
class T_conn> QMap<QString, QgsAbstractProviderConnection *> connectionsProtected( 
bool cached = 
true )
 
  863      if ( ! cached || mProviderConnections.isEmpty() )
 
  865        qDeleteAll( mProviderConnections );
 
  866        mProviderConnections.clear();
 
  867        const auto connNames { T_conn::connectionList() };
 
  868        for ( 
const auto &cname : connNames )
 
  870          mProviderConnections.insert( cname, 
new T_provider_conn( cname ) );
 
  873      return mProviderConnections;
 
  876    template <
class T_prov
ider_conn> 
void deleteConnectionProtected( 
const QString &name )
 
  878      T_provider_conn conn( name );
 
  880      mProviderConnections.clear();
 
  881      emit connectionDeleted( name );
 
  885    QMap<QString, QgsAbstractProviderConnection *> mProviderConnections;
 
  897    QString mDescription;
 
  903    CreateDataProviderFunction mCreateFunction = 
nullptr;
 
 
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsTextRendererUtils::CurvedTextFlags)