43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
#ifndef MAPVIEWELEMENTACCESSPOINT_H
|
|
#define MAPVIEWELEMENTACCESSPOINT_H
|
|
|
|
#include "MapModelElement.h"
|
|
#include "IHasMAC.h"
|
|
#include "IHasName.h"
|
|
|
|
#include "../elements/MV2DElementAccessPoint.h"
|
|
|
|
#include <Indoor/floorplan/v2/Floorplan.h>
|
|
|
|
class MMFloorAccessPoint : public MapModelElement, public IHasMAC, public IHasName {
|
|
|
|
private:
|
|
|
|
Floorplan::Floor* floor;
|
|
Floorplan::AccessPoint* ap;
|
|
MV2DElementAccessPoint mv2d;
|
|
|
|
public:
|
|
|
|
MMFloorAccessPoint(MapLayer* parent, Floorplan::Floor* floor, Floorplan::AccessPoint* ap) :
|
|
MapModelElement(parent), floor(floor), ap(ap), mv2d(ap) {
|
|
|
|
}
|
|
|
|
virtual void setMAC(const std::string& mac) override {ap->mac = mac;}
|
|
virtual const std::string& getMAC() const override {return ap->mac;}
|
|
|
|
virtual void setName(const std::string& name) override {ap->name = name;}
|
|
virtual const std::string& getName() const override {return ap->name;}
|
|
|
|
MV2DElement* getMV2D() const override {return (MV2DElement*) &mv2d;}
|
|
|
|
void deleteMe() const override {
|
|
parent->removeElement(this);
|
|
floor->accesspoints.erase(std::remove(floor->accesspoints.begin(), floor->accesspoints.end(), ap), floor->accesspoints.end());
|
|
}
|
|
|
|
};
|
|
|
|
#endif // MAPVIEWELEMENTACCESSPOINT_H
|