Newer
Older
Valentin Platzgummer
committed
#pragma once
#include <QObject>
#include "WimaAreaData.h"
#include "WimaServiceAreaData.h"
#include "WimaCorridorData.h"
#include "WimaMeasurementAreaData.h"
#include "WimaJoinedAreaData.h"
Valentin Platzgummer
committed
class WimaPlanData : QObject
{
Q_OBJECT
public:
WimaPlanData(QObject *parent = nullptr);
WimaPlanData(const WimaPlanData &other, QObject *parent = nullptr);
WimaPlanData& operator=(const WimaPlanData &other);
// Member Methodes
void append(const WimaJoinedAreaData &areaData);
Valentin Platzgummer
committed
void append(const WimaServiceAreaData &areaData);
void append(const WimaCorridorData &areaData);
void append(const WimaMeasurementAreaData &areaData);
void append(const QList<MissionItem *> &missionItems);
Valentin Platzgummer
committed
void clear();
QList<const WimaAreaData *> areaList() const;
QList<MissionItem> missionItems() const;
Valentin Platzgummer
committed
signals:
void areaListChanged();
private:
void _clearAndDeleteMissionItems();
Valentin Platzgummer
committed
private:
WimaJoinedAreaData _joinedArea;
Valentin Platzgummer
committed
WimaServiceAreaData _serviceArea;
WimaCorridorData _corridor;
WimaMeasurementAreaData _measurementArea;
QList<const WimaAreaData*> _areaList;
QList<MissionItem> _missionItems;