WimaServiceAreaData.h 1.08 KB
Newer Older
Valentin Platzgummer's avatar
Valentin Platzgummer committed
1 2 3
#pragma once

#include <QObject>
4
#include "QGeoCoordinate"
Valentin Platzgummer's avatar
Valentin Platzgummer committed
5 6

#include "WimaAreaData.h"
7 8 9
#include "WimaServiceArea.h"


Valentin Platzgummer's avatar
Valentin Platzgummer committed
10 11 12 13 14 15

class WimaServiceAreaData : public WimaAreaData
{
    Q_OBJECT

public:
16 17 18 19 20
    WimaServiceAreaData(QObject *parent = nullptr);
    WimaServiceAreaData(const WimaServiceAreaData &other, QObject *parent = nullptr);
    WimaServiceAreaData(const WimaServiceArea &other, QObject *parent = nullptr);
    WimaServiceAreaData& operator=(const WimaServiceAreaData &otherData);
    WimaServiceAreaData& operator=(const WimaServiceArea &otherArea);
Valentin Platzgummer's avatar
Valentin Platzgummer committed
21 22

    const QGeoCoordinate &takeOffPosition() const;
23 24 25
    const QGeoCoordinate &landPosition() const;

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

signals:
    void takeOffPositionChanged(const QGeoCoordinate& other);
29
    void landPositionChanged(const QGeoCoordinate& other);
Valentin Platzgummer's avatar
Valentin Platzgummer committed
30 31 32

public slots:
    void setTakeOffPosition(const QGeoCoordinate& newCoordinate);
33
    void setLandPosition(const QGeoCoordinate& newCoordinate);
Valentin Platzgummer's avatar
Valentin Platzgummer committed
34 35 36 37 38 39 40

private:
    // see WimaServieArea.h for explanation
    QGeoCoordinate      _takeOffPosition;
    QGeoCoordinate      _landPosition;
};