Fission FSN
Loading...
Searching...
No Matches
gfCHogCoreMain.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCHogCoreMain.h
4*
5* Purpose: HOG specific Main. Initialises HOG factories etc.
6*
7*********************************************************************/
8
9#ifndef gfCHogCoreMainhdr
10#define gfCHogCoreMainhdr
11
12#include <memory>
13
14#include <fsCore/fsStr.h>
16
19
20#if defined fsCollision
22#endif
23
25{
26public:
27
28 void abort(const fsStr& pNextLevelName);
29
31
32 static void create();
34
35 // Extension point for a consuming project (e.g. torsion) to merge in its
36 // own component/entity factories without gfHogCore needing to know about it.
37 static void extraComponentFactoryProviderSet(std::shared_ptr<fsCComponentFactory> (*pProvider)());
38 static void extraEntityFactoryProviderSet(std::shared_ptr<fsCEntityFactory> (*pProvider)());
39
40 virtual ~gfCHogCoreMain();
41
42 void runningOrderCreate() override;
43 void runningOrderReplace(const std::vector<fsStr> pNewOrder) override;
44
45protected:
46
47 void stateSaveDo() override;
48
49 void profileManagerCreateDo() override;
50
51 void factoriesCreateDo() override;
52
53 void messageDispatchersCreateDo() override;
54 void messageDispatchersDestroyDo() override;
55 void nextLocationInitialiseDo(const fsStr& pLevelName) override;
56
57 void debugGuiCreate() override;
58
59 void preInitialiseDo() override;
60 void postInitialiseDo() override;
61 void postUninitialiseDo() override;
62
64 {
65 }
66
67 // Default achievements trigger for the level entity. Override where a
68 // title needs its own gfCAchievementsTriggerComponent subclass (e.g. a
69 // non-default bonusBonusCount) instead of the plain base type.
70 virtual void achievementsTriggerComponentAdd(fsCEntity* pHogLevelEnt);
71
72 void initialiseDo() override;
73 void preUninitialiseDo() override;
74
75 void updateDo(fsS32 pDeltaMs) override;
76 void uninitialiseDo() override;
77
78 fsBool launcherRunningDo() override;
79
81
82private:
83
84 void hogSpecificComponentsRegister();
85
86#if defined fsCollision
87 static void collision(fsNCollision::fsICollisionWorld::fsSCollisionData pData, void* const pCaller);
88#endif
89};
90
91#endif
Definition fsCComponentFactory.h:26
Definition fsCEntityFactory.h:25
Definition fsCEntity.h:39
fsILevelBasedAppCoreMain()
Definition fsILevelBasedAppCoreMain.cpp:347
Definition fsStr.h:23
void factoriesCreateDo() override
Definition gfCHogCoreMain.cpp:388
void postUninitialiseDo() override
Definition gfCHogCoreMain.cpp:250
void runningOrderCreate() override
Definition gfCHogCoreMain.cpp:233
void postInitialiseDo() override
Definition gfCHogCoreMain.cpp:256
virtual ~gfCHogCoreMain()
Definition gfCHogCoreMain.cpp:599
void runningOrderReplace(const std::vector< fsStr > pNewOrder) override
Definition gfCHogCoreMain.cpp:228
void messageDispatchersDestroyDo() override
Definition gfCHogCoreMain.cpp:572
void stateSaveDo() override
Definition gfCHogCoreMain.cpp:212
virtual void achievementsTriggerComponentAdd(fsCEntity *pHogLevelEnt)
Definition gfCHogCoreMain.cpp:383
void updateDo(fsS32 pDeltaMs) override
Definition gfCHogCoreMain.cpp:268
void initialiseDo() override
Definition gfCHogCoreMain.cpp:491
virtual void gameSpecificComponentsRegister()
Definition gfCHogCoreMain.h:63
void preInitialiseDo() override
Definition gfCHogCoreMain.cpp:522
fsCEntity * mainMenuGuiCreate()
Definition gfCHogCoreMain.cpp:276
static void extraEntityFactoryProviderSet(std::shared_ptr< fsCEntityFactory >(*pProvider)())
Definition gfCHogCoreMain.cpp:103
void nextLocationInitialiseDo(const fsStr &pLevelName) override
Definition gfCHogCoreMain.cpp:302
void profileManagerCreateDo() override
Definition gfCHogCoreMain.cpp:223
gfCHogCoreMain()
Definition gfCHogCoreMain.cpp:594
void messageDispatchersCreateDo() override
Definition gfCHogCoreMain.cpp:567
static void extraComponentFactoryProviderSet(std::shared_ptr< fsCComponentFactory >(*pProvider)())
Definition gfCHogCoreMain.cpp:98
static void create()
Definition gfCHogCoreMain.cpp:577
fsBool launcherRunningDo() override
Definition gfCHogCoreMain.cpp:562
void preUninitialiseDo() override
Definition gfCHogCoreMain.cpp:529
static gfCHogCoreMain * instanceGet()
Definition gfCHogCoreMain.cpp:589
void uninitialiseDo() override
Definition gfCHogCoreMain.cpp:540
void abort(const fsStr &pNextLevelName)
Definition gfCHogCoreMain.cpp:262
void debugGuiCreate() override
Definition gfCHogCoreMain.cpp:243
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsICollisionWorld.h:44