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