Skip to content
WimaMeasurementAreaData.h 1.21 KiB
Newer Older
Valentin Platzgummer's avatar
Valentin Platzgummer committed
#pragma once

#include <QGeoCoordinate>
Valentin Platzgummer's avatar
Valentin Platzgummer committed
#include <QObject>
Valentin Platzgummer's avatar
Valentin Platzgummer committed

#include "WimaAreaData.h"
Valentin Platzgummer's avatar
Valentin Platzgummer committed
class WimaMeasurementAreaData : public WimaAreaData {
  Q_OBJECT
Valentin Platzgummer's avatar
Valentin Platzgummer committed

public:
Valentin Platzgummer's avatar
Valentin Platzgummer committed
  WimaMeasurementAreaData(QObject *parent = nullptr);
  WimaMeasurementAreaData(const WimaMeasurementAreaData &other,
                          QObject *parent = nullptr);
  WimaMeasurementAreaData(const WimaMeasurementArea &other,
                          QObject *parent = nullptr);
  WimaMeasurementAreaData &operator=(const WimaMeasurementAreaData &other);
  WimaMeasurementAreaData &operator=(const WimaMeasurementArea &other);
Valentin Platzgummer's avatar
Valentin Platzgummer committed

Valentin Platzgummer's avatar
Valentin Platzgummer committed
  QString type() const;
  WimaMeasurementAreaData *Clone() const {
    return new WimaMeasurementAreaData(*this);
  }
  QmlObjectListModel *tiles();
  const QmlObjectListModel *tiles() const;
  const QVariantList &tileCenterPoints() const;
  QVariantList &tileCenterPoints();
  const TileData &tileData() const;
  TileData &tileData();
  const QVector<int> &progress() const;
  QVector<int> &progress();
Valentin Platzgummer's avatar
Valentin Platzgummer committed

  static const char *typeString;
Valentin Platzgummer's avatar
Valentin Platzgummer committed

Valentin Platzgummer's avatar
Valentin Platzgummer committed
  void assign(const WimaMeasurementAreaData &other);
  void assign(const WimaMeasurementArea &other);
Valentin Platzgummer's avatar
Valentin Platzgummer committed
private:
  TileData _tileData;
  QVector<int> _progress;
Valentin Platzgummer's avatar
Valentin Platzgummer committed
};