81    Q_PROPERTY( QString 
id READ 
id WRITE setId NOTIFY idChanged )
 
   82    Q_PROPERTY( QString name READ name WRITE setName NOTIFY nameChanged )
 
   83    Q_PROPERTY( 
int autoRefreshInterval READ autoRefreshInterval WRITE setAutoRefreshInterval NOTIFY autoRefreshIntervalChanged )
 
   84    Q_PROPERTY( 
QgsLayerMetadata metadata READ metadata WRITE setMetadata NOTIFY metadataChanged )
 
   88    Q_PROPERTY( 
Qgis::LayerType type READ type CONSTANT )
 
   89    Q_PROPERTY( 
bool isValid READ isValid NOTIFY isValidChanged )
 
   90    Q_PROPERTY( 
double opacity READ opacity WRITE setOpacity NOTIFY opacityChanged )
 
   91    Q_PROPERTY( QString mapTipTemplate READ mapTipTemplate WRITE setMapTipTemplate NOTIFY mapTipTemplateChanged )
 
   92    Q_PROPERTY( 
bool mapTipsEnabled READ mapTipsEnabled WRITE setMapTipsEnabled NOTIFY mapTipsEnabledChanged )
 
   96    QgsMapLayer *layer = qobject_cast<QgsMapLayer *>( sipCpp );
 
  102      switch ( layer->type() )
 
  105          sipType = sipType_QgsVectorLayer;
 
  108          sipType = sipType_QgsRasterLayer;
 
  111          sipType = sipType_QgsPluginLayer;
 
  114          sipType = sipType_QgsMeshLayer;
 
  117          sipType = sipType_QgsVectorTileLayer;
 
  120          sipType = sipType_QgsAnnotationLayer;
 
  123          sipType = sipType_QgsPointCloudLayer;
 
  126          sipType = sipType_QgsGroupLayer;
 
  129          sipType = sipType_QgsTiledSceneLayer;
 
  157      Identifiable = 1 << 0, 
 
 
  172      LayerConfiguration = 1 << 0,  
 
  174      Symbology3D        = 1 << 2,  
 
  181      AttributeTable     = 1 << 9,  
 
  183      CustomProperties   = 1 << 11, 
 
  184      GeometryOptions    = 1 << 12, 
 
  190      AllStyleCategories = LayerConfiguration | Symbology | Symbology3D | Labeling | Fields | Forms | Actions |
 
  191                           MapTips | Diagrams | AttributeTable | Rendering | CustomProperties | GeometryOptions | Relations | Temporal | Legend | Elevation | Notes,
 
 
  193    Q_ENUM( StyleCategory )
 
  203    QgsMapLayer( 
Qgis::LayerType type = 
Qgis::LayerType::Vector, const QString &name = QString(), const QString &source = QString() );
 
  220    Qgis::LayerType type() const;
 
  255    virtual 
Qgis::MapLayerProperties properties() const;
 
  261    static QString extensionPropertyType( 
PropertyType type );
 
  286    bool setId( const QString &
id );
 
  292    void setName( const QString &name );
 
  298    QString name() const;
 
  322    Q_DECL_DEPRECATED 
void setShortName( const QString &shortName ) 
SIP_DEPRECATED;
 
  336    Q_DECL_DEPRECATED 
void setTitle( const QString &title ) 
SIP_DEPRECATED;
 
  350    Q_DECL_DEPRECATED 
void setAbstract( const QString &abstract ) 
SIP_DEPRECATED;
 
  364    Q_DECL_DEPRECATED 
void setKeywordList( const QString &keywords ) 
SIP_DEPRECATED;
 
  378    Q_DECL_DEPRECATED 
void setDataUrl( const QString &dataUrl ) 
SIP_DEPRECATED;
 
  392    Q_DECL_DEPRECATED 
void setDataUrlFormat( const QString &dataUrlFormat ) 
SIP_DEPRECATED;
 
  406    Q_DECL_DEPRECATED 
void setAttribution( const QString &attrib ) 
SIP_DEPRECATED;
 
  420    Q_DECL_DEPRECATED 
void setAttributionUrl( const QString &attribUrl ) 
SIP_DEPRECATED;
 
  451    Q_DECL_DEPRECATED 
void setMetadataUrl( 
const QString &metaUrl ) 
SIP_DEPRECATED;
 
  472    Q_DECL_DEPRECATED 
void setMetadataUrlType( const QString &metaUrlType ) 
SIP_DEPRECATED;
 
  493    Q_DECL_DEPRECATED 
void setMetadataUrlFormat( const QString &metaUrlFormat ) 
SIP_DEPRECATED;
 
  504    Q_DECL_DEPRECATED QString metadataUrlFormat() const 
SIP_DEPRECATED;
 
  511    void setBlendMode( QPainter::CompositionMode blendMode );
 
  517    QPainter::CompositionMode blendMode() const;
 
  527    virtual 
void setOpacity( 
double opacity );
 
  537    virtual 
double opacity() const;
 
  540    bool readOnly()
 const { 
return isReadOnly(); }
 
  569    QgsRectangle wgs84Extent( 
bool forceRecalculate = 
false ) 
const;
 
  576    bool isValid() 
const;
 
  588    QString publicSource( 
bool hidePassword = 
false ) 
const;
 
  595    QString source() 
const;
 
  601    virtual QStringList subLayers() 
const;
 
  607    virtual void setLayerOrder( 
const QStringList &layers );
 
  614    virtual void setSubLayerVisibility( 
const QString &name, 
bool visible );
 
  622    virtual bool supportsEditing() 
const;
 
  625    virtual bool isEditable() 
const;
 
  632    virtual bool isModified() 
const;
 
  637    virtual bool isSpatial() 
const;
 
  648    virtual bool isTemporary() 
const;
 
  656      FlagDontResolveLayers = 1 << 0, 
 
  657      FlagTrustLayerMetadata = 1 << 1, 
 
  658      FlagReadExtentFromXml = 1 << 2, 
 
  659      FlagForceReadOnly = 1 << 3, 
 
 
  698    bool writeLayerXml( QDomElement &layerElement, QDomDocument &document, 
const QgsReadWriteContext &context ) 
const;
 
  703    virtual void resolveReferences( 
QgsProject *project );
 
  709    Q_INVOKABLE QStringList customPropertyKeys() 
const;
 
  716    Q_INVOKABLE 
void setCustomProperty( 
const QString &key, 
const QVariant &value );
 
  722    Q_INVOKABLE QVariant customProperty( 
const QString &value, 
const QVariant &defaultValue = QVariant() ) 
const;
 
  745    virtual int listStylesInDatabase( QStringList &ids 
SIP_OUT, QStringList &names 
SIP_OUT,
 
  751    virtual QString getStyleFromDatabase( 
const QString &styleId, QString &msgError 
SIP_OUT );
 
  759    virtual bool deleteStyleFromDatabase( 
const QString &styleId, QString &msgError 
SIP_OUT );
 
  769      QmlGenerationFailed = 1 << 0, 
 
  770      SldGenerationFailed = 1 << 1,  
 
  771      DatabaseWriteFailed = 1 << 2, 
 
 
  773    Q_ENUM( SaveStyleResult )
 
  800    Q_DECL_DEPRECATED virtual 
void saveStyleToDatabase( const QString &name, const QString &description,
 
  801        bool useAsDefault, const QString &uiFileContent,
 
  819        bool useAsDefault, const QString &uiFileContent,
 
  836    virtual QString loadNamedStyle( const QString &theURI, 
bool &resultFlag 
SIP_OUT, 
bool loadFromLocalDb,
 
  838                                    Qgis::LoadStyleFlags flags = 
Qgis::LoadStyleFlags() );
 
  855      const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
 
  856      Q_ASSERT( metaEnum.isValid() );
 
  857      if ( !metaEnum.isValid() )
 
  859        QgsDebugError( QStringLiteral( 
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
 
  865      if ( metaEnum.isValid() )
 
  868        QByteArray ba = customProperty( key, metaEnum.valueToKey( 
static_cast<int>( defaultValue ) ) ).toString().toUtf8();
 
  869        const char *vs = ba.data();
 
  870        v = 
static_cast<T
>( metaEnum.keyToValue( vs, &ok ) );
 
  878      v = 
static_cast<T
>( customProperty( key, 
static_cast<int>( defaultValue ) ).toInt( &ok ) );
 
  879      if ( metaEnum.isValid() )
 
  881        if ( !ok || !metaEnum.valueToKey( 
static_cast<int>( v ) ) )
 
  889          setCustomEnumProperty( key, v );
 
 
  907      const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
 
  908      Q_ASSERT( metaEnum.isValid() );
 
  909      if ( metaEnum.isValid() )
 
  911        setCustomProperty( key, metaEnum.valueToKey( 
static_cast<int>( value ) ) );
 
  915        QgsDebugError( QStringLiteral( 
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
 
 
  933      const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
 
  934      Q_ASSERT( metaEnum.isValid() );
 
  935      if ( !metaEnum.isValid() )
 
  937        QgsDebugError( QStringLiteral( 
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
 
  943      if ( metaEnum.isValid() )
 
  946        QByteArray ba = customProperty( key, metaEnum.valueToKeys( defaultValue ) ).toString().toUtf8();
 
  947        const char *vs = ba.data();
 
  948        v = 
static_cast<T
>( metaEnum.keysToValue( vs, &ok ) );
 
  953        const int intValue = customProperty( key, 
static_cast<int>( defaultValue ) ).toInt( &ok );
 
  954        if ( metaEnum.isValid() )
 
  960            const QByteArray keys = metaEnum.valueToKeys( intValue );
 
  961            const int intValueCheck = metaEnum.keysToValue( keys );
 
  962            if ( intValue != intValueCheck )
 
  973              setCustomFlagProperty( key, v );
 
 
  997      const QMetaEnum metaEnum = QMetaEnum::fromType<T>();
 
  998      Q_ASSERT( metaEnum.isValid() );
 
  999      if ( metaEnum.isValid() )
 
 1001        setCustomProperty( key, metaEnum.valueToKeys( value ) );
 
 1005        QgsDebugError( QStringLiteral( 
"Invalid metaenum. Enum probably misses Q_ENUM or Q_FLAG declaration." ) );
 
 
 1015    void removeCustomProperty( 
const QString &key );
 
 1122    static QString formatLayerName( 
const QString &name );
 
 1130    virtual QString metadataUri() 
const;
 
 1137    void exportNamedMetadata( QDomDocument &doc, QString &errorMsg ) 
const;
 
 1147    virtual QString saveDefaultMetadata( 
bool &resultFlag 
SIP_OUT );
 
 1162    QString saveNamedMetadata( 
const QString &uri, 
bool &resultFlag 
SIP_OUT );
 
 1180    virtual QString loadNamedMetadata( 
const QString &uri, 
bool &resultFlag 
SIP_OUT );
 
 1193    virtual QString loadDefaultMetadata( 
bool &resultFlag 
SIP_OUT );
 
 1202    bool loadNamedMetadataFromDatabase( 
const QString &db, 
const QString &uri, QString &qmd );
 
 1210    bool importNamedMetadata( QDomDocument &document, QString &errorMessage );
 
 1220    virtual QString styleURI() 
const;
 
 1234    virtual QString loadDefaultStyle( 
bool &resultFlag 
SIP_OUT );
 
 1264    virtual bool loadNamedStyleFromDatabase( 
const QString &db, 
const QString &uri, QString &qml 
SIP_OUT );
 
 1274    virtual bool importNamedStyle( QDomDocument &doc, QString &errorMsg 
SIP_OUT,
 
 1296    Q_DECL_DEPRECATED 
virtual void exportSldStyle( QDomDocument &doc, QString &errorMsg ) 
const SIP_DEPRECATED;
 
 1329    virtual QString saveDefaultStyle( 
bool &resultFlag 
SIP_OUT, StyleCategories categories );
 
 1359    virtual QString saveNamedStyle( 
const QString &uri, 
bool &resultFlag 
SIP_OUT, StyleCategories categories = AllStyleCategories );
 
 1370    virtual QString saveSldStyle( 
const QString &uri, 
bool &resultFlag 
SIP_OUT ) 
const;
 
 1392    virtual QString loadSldStyle( 
const QString &uri, 
bool &resultFlag 
SIP_OUT );
 
 1394    virtual bool readSld( 
const QDomNode &node, QString &errorMessage )
 
 1395    { Q_UNUSED( node ) errorMessage = QStringLiteral( 
"Layer type %1 not supported" ).arg( 
static_cast<int>( type() ) ); 
return false; }
 
 
 1419    virtual bool readStyle( 
const QDomNode &node, QString &errorMessage,
 
 1446    virtual bool writeStyle( QDomNode &node, QDomDocument &doc, QString &errorMessage, 
const QgsReadWriteContext &context,
 
 1480    void setDataSource( 
const QString &dataSource, 
const QString &baseName = QString(), 
const QString &provider = QString(), 
bool loadDefaultStyleFlag = 
false );
 
 1511    void setDataSource( 
const QString &dataSource, 
const QString &baseName, 
const QString &provider, 
const QgsDataProvider::ProviderOptions &options, 
bool loadDefaultStyleFlag = 
false );
 
 1547    QString providerType() 
const;
 
 1550    QUndoStack *undoStack();
 
 1555    QUndoStack *undoStackStyles();
 
 1562    Q_DECL_DEPRECATED 
void setLegendUrl( 
const QString &legendUrl ) 
SIP_DEPRECATED;
 
 1576    Q_DECL_DEPRECATED 
void setLegendUrlFormat( const QString &legendUrlFormat ) 
SIP_DEPRECATED;
 
 1583    Q_DECL_DEPRECATED QString legendUrlFormat() const 
SIP_DEPRECATED;
 
 1619    bool isInScaleRange( 
double scale ) const;
 
 1631    double minimumScale() const;
 
 1643    double maximumScale() const;
 
 1653    bool hasScaleBasedVisibility() const;
 
 1661    Q_DECL_DEPRECATED 
bool hasAutoRefreshEnabled() const 
SIP_DEPRECATED;
 
 1669    Qgis::AutoRefreshMode autoRefreshMode() const;
 
 1677    int autoRefreshInterval() const;
 
 1689    void setAutoRefreshInterval( 
int interval );
 
 1697    Q_DECL_DEPRECATED 
void setAutoRefreshEnabled( 
bool enabled ) 
SIP_DEPRECATED;
 
 1705    void setAutoRefreshMode( 
Qgis::AutoRefreshMode mode );
 
 1724    virtual QString htmlMetadata() const;
 
 1727    virtual QDateTime timestamp() const;
 
 1741    QString refreshOnNotifyMessage()
 const { 
return mRefreshOnNofifyMessage; }
 
 1757    QString originalXmlProperties() 
const;
 
 1766    void setOriginalXmlProperties( 
const QString &originalXmlProperties );
 
 1772    static QString generateId( 
const QString &layerName );
 
 1834    virtual bool hasMapTips() 
const;
 
 1843    QString mapTipTemplate() 
const;
 
 1852    void setMapTipTemplate( 
const QString &mapTipTemplate );
 
 1860    void setMapTipsEnabled( 
bool enabled );
 
 1866    bool mapTipsEnabled() 
const;
 
 1888    void setMinimumScale( 
double scale );
 
 1899    void setMaximumScale( 
double scale );
 
 1908    void setScaleBasedVisibility( 
bool enabled );
 
 1918    void triggerRepaint( 
bool deferredUpdate = 
false );
 
 1926    void trigger3DUpdate();
 
 1931    void emitStyleChanged();
 
 1940    virtual bool setDependencies( 
const QSet<QgsMapLayerDependency> &layers );
 
 1946    void setRefreshOnNotifyEnabled( 
bool enabled );
 
 1964    SIP_PYOBJECT __repr__();
 
 1966    QString str = QStringLiteral( 
"<QgsMapLayer: '%1' (%2)>" ).arg( sipCpp->name(), sipCpp->dataProvider() ? sipCpp->dataProvider()->name() : QStringLiteral( 
"Invalid" ) );
 
 1967    sipRes = PyUnicode_FromString( str.toUtf8().constData() );
 
 2211    void onNotified( 
const QString &message );
 
 2245    virtual void setExtent3D( 
const QgsBox3D &box );
 
 2248    void setValid( 
bool valid );
 
 2260    virtual bool writeXml( QDomNode &layer_node, QDomDocument &document, 
const QgsReadWriteContext &context ) 
const;
 
 2273    virtual QString encodedSource( 
const QString &source, 
const QgsReadWriteContext &context ) 
const;
 
 2287    virtual QString decodedSource( 
const QString &source, 
const QString &dataProvider, 
const QgsReadWriteContext &context ) 
const;
 
 2294    void readCustomProperties( 
const QDomNode &layerNode, 
const QString &keyStartsWith = QString() );
 
 2297    void writeCustomProperties( QDomNode &layerNode, QDomDocument &doc ) 
const;
 
 2300    void readStyleManager( 
const QDomNode &layerNode );
 
 2302    void writeStyleManager( QDomNode &layerNode, QDomDocument &doc ) 
const;
 
 2307    void writeCommonStyle( QDomElement &layerElement, QDomDocument &document,
 
 2314    void readCommonStyle( 
const QDomElement &layerElement, 
const QgsReadWriteContext &context,
 
 2318    void setProviderType( 
const QString &providerType );
 
 2323    void connectNotify( 
const char *signal ) 
override;
 
 2338    void invalidateWgs84Extent();
 
 2341    bool mValid = 
false;
 
 2362    bool mIsRefreshOnNofifyEnabled = 
false;
 
 2378    bool mShouldValidateCrs = 
true;
 
 2385    double mLayerOpacity = 1.0;
 
 2392    int mBlockStyleChangedSignal = 0;
 
 2404    QString crsHtmlMetadata() 
const;
 
 2417    QString generalHtmlMetadata() 
const;
 
 2427    QString customPropertyHtmlMetadata() 
const;
 
 2449    bool loadNamedPropertyFromDatabase( 
const QString &db, 
const QString &uri, QString &xml, 
QgsMapLayer::PropertyType type );
 
 2453    void updateExtent( 
const QgsBox3D &extent ) 
const;
 
 2455    bool rebuildCrs3D( QString *error = 
nullptr );
 
 2461    virtual bool isReadOnly() 
const;
 
 2480    QPainter::CompositionMode mBlendMode = QPainter::CompositionMode_SourceOver;
 
 2488    double mMinScale = 0;
 
 2490    double mMaxScale = 100000000;
 
 2492    bool mScaleBasedVisibility = 
false;
 
 2497    std::unique_ptr< QgsMapLayerServerProperties > mServerProperties;
 
 2500    QUndoStack *mUndoStack = 
nullptr;
 
 2502    QUndoStack *mUndoStackStyles = 
nullptr;
 
 2508    std::unique_ptr<QgsMapLayerLegend> mLegend;
 
 2511    std::unique_ptr<QgsMapLayerStyleManager> mStyleManager;
 
 2516    QTimer *mRefreshTimer = 
nullptr;
 
 2521    std::unique_ptr<QgsAbstract3DRenderer> m3DRenderer;
 
 2537    QString mOriginalXmlProperties;
 
 2540    bool mRepaintRequestedFired = 
false;
 
 2543    QString mLegendPlaceholderImage;
 
 2546    QString mMapTipTemplate;
 
 2549    bool mMapTipsEnabled = 
true;
 
 2552    friend class TestQgsProject;
 
 2553    friend class TestQgsMapLayer;