31 lines
550 B
C++
31 lines
550 B
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QMetaType>
|
|
|
|
class MapLayer : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
enum class LayerType { Raster, Vector };
|
|
|
|
explicit MapLayer(const QString& name, const QString& uri);
|
|
|
|
virtual ~MapLayer() override = default;
|
|
|
|
QString name() const;
|
|
void setName(const QString& n);
|
|
|
|
QString dataPath() const;
|
|
void setDataPath(const QString& p);
|
|
|
|
virtual LayerType layerType() const = 0;
|
|
|
|
private:
|
|
QString m_name;
|
|
QString m_uri;
|
|
};
|
|
|
|
Q_DECLARE_METATYPE(MapLayer*)
|