Fission FSN
Loading...
Searching...
No Matches
fsCHardware.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCHardware.h
4*
5* Purpose: Cocos2d-x implementation.
6*
7*********************************************************************/
8
9#ifndef fsCHardwarehdr
10#define fsCHardwarehdr
11
12#include "../../fsIHardware.h"
13
14#if defined fsDesktop
15struct GLFWwindow;
16struct GLFWcursor;
17struct GLFWvidmode;
18
19#if defined fsMacStore
20 //class fsCHardwareImpl;
21#endif
22#endif
23
24class fsCHardware : public fsIHardware
25{
26public:
27
28#if defined fsDesktop
29 void hardwareCursorInit() override;
30 void hardwareCursorUninit() override;
31 void hardwareCursorChange(const fsStr& pID) override;
32 void windowedDisplayModesEnumerate(fsDisplayInfo*& pAvailableModeList, fsS32& pNumModesInList) override;
33 void appMinimize() override;
34 void appMaximize() override;
35 void appHideEnable() override;
36#endif
37
38 void hardwareCursorEnabledSet(fsBool pEnabled) const override;
39 void hardwareCursorSet(const fsCResourceName& pFilename, fsBool pFlipped) override;
40
41 void timeScaleSet(fsF32 pScale) override;
42 void engineCacheFlush() const override;
43
44 fsU64 utcTimeGet() const override;
45
46 ePlatform platformGet() const override;
47
48 fsBool smallDeviceGet() const override;
49
50 fsStr sdkVersionStringGet() const override;
51
52 fsStr appDataFolderGet() const override;
53
54 fsBool multipleAppInstances() const override;
55 fsBool processRunning(const fsStr& pProcessName) const override;
56
58
59 void browserLaunch(const fsStr& pUrl) const override;
60
62 virtual ~fsCHardware();
63
64protected:
65
66#if defined fsDesktop
67 void wallpaperApplyDo(const fsCResourceName& pWallpaper) override;
68#endif
69
70 void updateDo(fsS32 pDeltaMs) override;
71 void rndSeedDo() const override;
72
73private:
74
75#if defined fsPCStore
76 fsBool mCursorInClientArea;
77#endif
78
79#if defined fsDesktop
80
81 static void enterEvent(GLFWwindow* window, int entered);
82
83 void cursorApply();
84 void cursorCreate(fsStr const& pFilename, fsBool pFlipped);
85 void cursorClear();
86
87 GLFWcursor* mCursor = nullptr;
88
89 struct SCursor
90 {
91 SCursor(fsStr const& pFilename) : mFilename(pFilename)
92 {
93 }
94
95 ~SCursor();
96 const fsStr mFilename;
97 GLFWcursor* mCursor = nullptr;
98 };
99
100 fsS32 mWindowWWidth;
101 fsS32 mWindowHeight;
102 fsBool mWindowFullscreen;
103
104#if defined fsMacStore
105 // std::unique_ptr<fsCHardwareImpl> mImpl;
106#endif
107#endif
108};
109
110#endif
Definition fsCHardware.h:27
ePlatform platformGet() const override
fsBool multipleAppInstances() const override
void hardwareCursorEnabledSet(fsBool pEnabled) const override
fsBool smallDeviceGet() const override
void timeScaleSet(fsF32 pScale) override
virtual ~fsCHardware()
fsStr appDataFolderGet() const override
fsStr sdkVersionStringGet() const override
void engineCacheFlush() const override
fsBool processRunning(const fsStr &pProcessName) const override
void rndSeedDo() const override
void updateDo(fsS32 pDeltaMs) override
fsU64 utcTimeGet() const override
void hardwareCursorSet(const fsCResourceName &pFilename, fsBool pFlipped) override
void browserLaunch(const fsStr &pUrl) const override
fsBool windowedModePossibleGet() const override
Definition fsCResourceName.h:32
Definition fsIHardware.h:25
ePlatform
Definition fsIHardware.h:29
Definition fsStr.h:23
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
float fsF32
Definition fsBaseTypes.h:28
unsigned long long fsU64
Definition fsBaseTypes.h:24