Fission FSN
Loading...
Searching...
No Matches
fsCDisplay.h
Go to the documentation of this file.
1/********************************************************************
2*
3* Created: 3/3/2014 12:35
4*
5* File: fsCDisplay.h
6*
7* Author: Mick Waites
8*
9* Purpose: Marmalade implementation of fsIDisplay.
10*
11*********************************************************************/
12
13#ifndef fsCDisplayhdr
14#define fsCDisplayhdr
15
17
18#ifdef AXMOL_V3
19 #include <scene/Scene.h>
20#else
21 #include <2d/Scene.h>
22#endif
23
24#include <2d/Layer.h>
25
26
27struct fsDisplayInfo;
28struct GLFWwindow;
29
30class fsCDisplay : public fsIDisplay
31{
32 friend class fsIDisplay;
33
34public:
35
36protected:
37
38 fsBool displayTypeIsDesktopGet() const override;
39 fsPoint fixedDisplaySizeGet() const override;
40 void desktopScreenModesEnumerateDo() override;
41 fsBool desktopScreenModeSetDo(const fsCDisplayMode* pDisplayMode, fsBool pFullScreen) override;
42
43 fsCDisplay();
44 virtual ~fsCDisplay();
45
46private:
47
48 void defaultCameraFlagSetDo(fsU32 pFlag) override;
49
50 void clipWindowSetDo(const fsCDisplayMode* const pDisplayMode) override;
51
52 void buffersSwap();
53
54 static void focus(GLFWwindow* pWindow, int pGotFocus);
55 void focusStatusHandle();
56
57 fsStr nameGet();
58
59 void renderViewCreate(const fsCDisplayMode* pDisplayMode, fsBool pFullScreen);
60 void appImplSceneCreate();
61
62 ax::Scene* mImpl;
63
64 class fsCAppLayer : public ax::Layer
65 {
66 public:
67
68 void shutdownCallbackRegister();
69
70 void shutdown();
71
72 void draw(ax::Renderer* renderer, const ax::Mat4& transform, uint32_t flags) override;
73 void update(float delta) override;
74
75
76 // implement the "static create()" method manually
77 CREATE_FUNC(fsCAppLayer);
78 // ~fsCAppLayer();
79 };
80};
81
82#endif
fsCDisplay()
Definition fsCDisplay.cpp:454
fsBool displayTypeIsDesktopGet() const override
Definition fsCDisplay.cpp:104
fsBool desktopScreenModeSetDo(const fsCDisplayMode *pDisplayMode, fsBool pFullScreen) override
Definition fsCDisplay.cpp:240
friend class fsIDisplay
Definition fsCDisplay.h:32
virtual ~fsCDisplay()
Definition fsCDisplay.cpp:463
void desktopScreenModesEnumerateDo() override
Definition fsCDisplay.cpp:140
fsPoint fixedDisplaySizeGet() const override
Definition fsCDisplay.cpp:113
Definition fsCDisplayMode.h:20
void update(fsS32 pDeltaMs)
Definition fsINode.cpp:486
const fsStr & nameGet() const
Definition fsINode.cpp:430
Definition fsStr.h:23
unsigned int fsU32
Definition fsBaseTypes.h:21
bool fsBool
Definition fsBaseTypes.h:26
Definition fsPoint.h:17