1#ifndef GAME_EDITOR_MAP_OBJECT_H
2#define GAME_EDITOR_MAP_OBJECT_H
3
4class CEditor;
5class CEditorMap;
6class IGraphics;
7class ISound;
8class IStorage;
9class ITextRender;
10
11class CMapObject
12{
13public:
14 explicit CMapObject(CEditorMap *pMap);
15 CMapObject(const CMapObject &Other);
16 virtual ~CMapObject() = default;
17
18 virtual void OnAttach(CEditorMap *pMap);
19
20 const CEditor *Editor() const;
21 CEditor *Editor();
22 const CEditorMap *Map() const;
23 CEditorMap *Map();
24 const IGraphics *Graphics() const;
25 IGraphics *Graphics();
26 const ISound *Sound() const;
27 ISound *Sound();
28 const IStorage *Storage() const;
29 IStorage *Storage();
30 const ITextRender *TextRender() const;
31 ITextRender *TextRender();
32
33private:
34 CEditorMap *m_pMap;
35};
36
37#endif
38