39 lines
709 B
C++
39 lines
709 B
C++
#ifndef MAPMODELELEMENT_H
|
|
#define MAPMODELELEMENT_H
|
|
|
|
|
|
#include "MapLayer.h"
|
|
|
|
class MV2DElement;
|
|
class MV3DElement;
|
|
|
|
class MapModelElement {
|
|
|
|
protected:
|
|
|
|
MapLayer* parent;
|
|
|
|
public:
|
|
|
|
/** ctor */
|
|
MapModelElement(MapLayer* parent) : parent(parent) {;}
|
|
|
|
/** dtor */
|
|
virtual ~MapModelElement() {;}
|
|
|
|
/** get the 2D interaction class for this element */
|
|
virtual MV2DElement* getMV2D() const {return nullptr;}
|
|
|
|
/** get the 3D interaction class for this element */
|
|
virtual MV3DElement* getMV3D() const {return nullptr;}
|
|
|
|
/** delete this element from the model */
|
|
virtual void deleteMe() const {;}
|
|
|
|
/** get the parent element */
|
|
MapLayer* getParent() const {return parent;}
|
|
|
|
};
|
|
|
|
#endif // MAPMODELELEMENT_H
|