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#include <axmol.h>
14
15#if defined fsDesktop
16struct GLFWwindow;
17struct GLFWcursor;
18struct GLFWvidmode;
19
20#endif
21
22#if (AX_TARGET_PLATFORM == AX_PLATFORM_IOS) || (AX_TARGET_PLATFORM == AX_PLATFORM_MAC)
23 class fsCHardwareImpl;
24#endif
25
27{
28public:
29
30#if defined fsDesktop
31 void hardwareCursorInit() override;
32 void hardwareCursorUninit() override;
33 void hardwareCursorChange(const fsStr& pID) override;
34 void windowedDisplayModesEnumerate(fsDisplayInfo*& pAvailableModeList, fsS32& pNumModesInList) override;
35 void appMinimize() override;
36 void appMaximize() override;
37 void appHideEnable() override;
38#endif
39
40 void cursorPosSet(const fsVec2d& pPos) override;
41
42 void hardwareCursorEnabledSet(fsBool pEnabled) const override;
43 void hardwareCursorSet(const fsCResourceName& pFilename, fsBool pFlipped) override;
44
45 void timeScaleSet(fsF32 pScale) override;
46 void engineCacheFlush() const override;
47
48 fsU64 utcTimeGet() const override;
49
50 ePlatform platformGet() const override;
51
52 fsBool smallDeviceGet() const override;
53
54 fsStr sdkVersionStringGet() const override;
55
56 fsStr appDataFolderGet() const override;
57
58 fsBool multipleAppInstances() const override;
59 fsBool processRunning(const fsStr& pProcessName) const override;
60
61 fsBool windowedModePossibleGet() const override;
62
63 void browserLaunch(const fsStr& pUrl) const override;
64
66 virtual ~fsCHardware();
67
68protected:
69
70#if defined fsDesktop
71 void wallpaperApplyDo(const fsCResourceName& pWallpaper) override;
72#endif
73
74 void updateDo(fsS32 pDeltaMs) override;
75 void rndSeedDo() const override;
76
77private:
78
79#if defined fsPCStore
80 fsBool mCursorInClientArea;
81#endif
82
83#if defined fsDesktop
84
85 static void enterEvent(GLFWwindow* window, int entered);
86
87 void cursorApply();
88 void cursorCreate(fsStr const& pFilename, fsBool pFlipped);
89 void cursorClear();
90
91 GLFWcursor* mCursor = nullptr;
92
93 struct SCursor
94 {
95 SCursor(fsStr const& pFilename) : mFilename(pFilename)
96 {
97 }
98
99 ~SCursor();
100 const fsStr mFilename;
101 GLFWcursor* mCursor = nullptr;
102 };
103
104 fsS32 mWindowWWidth;
105 fsS32 mWindowHeight;
106 fsBool mWindowFullscreen;
107
108#endif
109#if (AX_TARGET_PLATFORM == AX_PLATFORM_IOS) || (AX_TARGET_PLATFORM == AX_PLATFORM_MAC)
110 std::unique_ptr<fsCHardwareImpl> mImpl;
111#endif
112};
113
114#endif
ePlatform platformGet() const override
Definition fsCHardware.cpp:271
fsCHardware()
Definition fsCHardware.cpp:387
fsBool multipleAppInstances() const override
Definition fsCHardware.cpp:329
void hardwareCursorEnabledSet(fsBool pEnabled) const override
Definition fsCHardware.cpp:362
fsBool smallDeviceGet() const override
Definition fsCHardware.cpp:288
void timeScaleSet(fsF32 pScale) override
Definition fsCHardware.cpp:42
fsStr appDataFolderGet() const override
Definition fsCHardware.cpp:307
virtual ~fsCHardware()
Definition fsCHardware.cpp:397
fsStr sdkVersionStringGet() const override
Definition fsCHardware.cpp:302
void engineCacheFlush() const override
Definition fsCHardware.cpp:255
fsBool processRunning(const fsStr &pProcessName) const override
Definition fsCHardware.cpp:316
void rndSeedDo() const override
Definition fsCHardware.cpp:260
void updateDo(fsS32 pDeltaMs) override
Definition fsCHardware.cpp:340
fsU64 utcTimeGet() const override
Definition fsCHardware.cpp:265
void hardwareCursorSet(const fsCResourceName &pFilename, fsBool pFlipped) override
Definition fsCHardware.cpp:344
void browserLaunch(const fsStr &pUrl) const override
Definition fsCHardware.cpp:373
fsBool windowedModePossibleGet() const override
Definition fsCHardware.cpp:378
void cursorPosSet(const fsVec2d &pPos) override
Definition fsCHardware.cpp:27
Definition fsCHardwareImpl.h:16
Definition fsCResourceName.h:32
fsIHardware()
Definition fsIHardware.cpp:71
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
Definition fsVec2d.h:16