]> git.tdb.fi Git - libs/game.git/blob - source/gameview/presenter.h
Decorate things which constitute the public API of the library
[libs/game.git] / source / gameview / presenter.h
1 #ifndef MSP_GAMEVIEW_PRESENTER_H_
2 #define MSP_GAMEVIEW_PRESENTER_H_
3
4 #include <msp/datafile/collection.h>
5 #include <msp/game/director.h>
6 #include <msp/game/eventobserver.h>
7 #include <msp/gl/view.h>
8 #include "mspgameview_api.h"
9
10 namespace Msp::GameView {
11
12 class Renderer;
13
14 class MSPGAMEVIEW_API Presenter
15 {
16 private:
17         Game::Director &director;
18         GL::View &gl_view;
19         DataFile::Collection &resources;
20         Game::EventObserver event_observer;
21         std::vector<Renderer *> renderers;
22
23 public:
24         Presenter(Game::Director &, GL::View &);
25         ~Presenter();
26
27 private:
28         void stage_activated(const Game::Events::StageActivated &);
29 };
30
31 } // namespace Msp::GameView
32
33 #endif