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#ifdef AXMOL_V3
73 void draw(const ax::SceneRenderState& state, const ax::Mat4& transform, uint32_t flags) override;
74#else
75 void draw(ax::Renderer* renderer, const ax::Mat4& transform, uint32_t flags) override;
76#endif
77 void update(float delta) override;
78
79
80 // implement the "static create()" method manually
81 CREATE_FUNC(fsCAppLayer);
82 // ~fsCAppLayer();
83 };
84};
85
86#endif
fsCDisplay()
Definition fsCDisplay.cpp:476
fsBool displayTypeIsDesktopGet() const override
Definition fsCDisplay.cpp:104
fsBool desktopScreenModeSetDo(const fsCDisplayMode *pDisplayMode, fsBool pFullScreen) override
Definition fsCDisplay.cpp:242
friend class fsIDisplay
Definition fsCDisplay.h:32
virtual ~fsCDisplay()
Definition fsCDisplay.cpp:485
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