| 1 | #ifndef GAME_EDITOR_EDITOR_OBJECT_H |
|---|---|
| 2 | #define GAME_EDITOR_EDITOR_OBJECT_H |
| 3 | |
| 4 | class CEditor; |
| 5 | class IInput; |
| 6 | class IClient; |
| 7 | class CConfig; |
| 8 | class IEngine; |
| 9 | class IGraphics; |
| 10 | class ISound; |
| 11 | class ITextRender; |
| 12 | class IStorage; |
| 13 | class CUi; |
| 14 | class CRenderTools; |
| 15 | class CRenderMap; |
| 16 | |
| 17 | class CEditorObject |
| 18 | { |
| 19 | public: |
| 20 | virtual ~CEditorObject() = default; |
| 21 | |
| 22 | /** |
| 23 | * Initialize the interface pointers. |
| 24 | * Needs to be the first function that is called. |
| 25 | */ |
| 26 | virtual void OnInit(CEditor *pEditor); |
| 27 | |
| 28 | CEditor *Editor(); |
| 29 | const CEditor *Editor() const; |
| 30 | IInput *Input(); |
| 31 | const IInput *Input() const; |
| 32 | IClient *Client(); |
| 33 | const IClient *Client() const; |
| 34 | CConfig *Config(); |
| 35 | const CConfig *Config() const; |
| 36 | IEngine *Engine(); |
| 37 | const IEngine *Engine() const; |
| 38 | IGraphics *Graphics(); |
| 39 | const IGraphics *Graphics() const; |
| 40 | ISound *Sound(); |
| 41 | const ISound *Sound() const; |
| 42 | ITextRender *TextRender(); |
| 43 | const ITextRender *TextRender() const; |
| 44 | IStorage *Storage(); |
| 45 | const IStorage *Storage() const; |
| 46 | CUi *Ui(); |
| 47 | const CUi *Ui() const; |
| 48 | CRenderMap *RenderMap(); |
| 49 | const CRenderMap *RenderMap() const; |
| 50 | |
| 51 | private: |
| 52 | CEditor *m_pEditor; |
| 53 | }; |
| 54 | |
| 55 | #endif |
| 56 |