Fission FSN
Loading...
Searching...
No Matches
gfCAnagramComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCAnagramComponent.h
4*
5* Purpose: Anagram behavior all wrapped up.
6*
7*********************************************************************/
8
9#ifndef gfCAnagramComponenthdr
10#define gfCAnagramComponenthdr
11
13
15{
16 friend class fsCComponentFactory;
17
18public:
19
20 static const fsCUniqueId mTypeId;
21 static const fsStr mAnagramPrefix;
22
24
31
32
33protected:
34
35 void listenersRegisterDo() override;
36 void listenersDeregisterDo() override;
37 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
38 const fsIMessageDispatcher::sMessageParameters& pParam) override;
39
40 void serialiseDo() override;
41 void deserialiseDo() override;
42
43 void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
44
45 static fsIComponent* create(fsCEntity* pParent);
46
48 virtual ~gfCAnagramComponent();
49
50private:
51
52 void intialise(const fsStr& pAnagram, const fsStr& pSolution, const fsStr& pTileSet);
53
54 fsBool broadcastAnagramState();
55
56 void swap(fsCEntity* pFlipTile);
57
58 fsStr sanatizeAnagram(const fsStr& pAnagram) const;
59 fsStr currentAnagramStateGet();
60
61 std::vector<fsCEntity*> mTileEntities;
62 fsCEntity* mFlipper;
63};
64
65#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
fsIComponent(fsCEntity *pParent)
Definition fsIComponent.cpp:86
fsIMessageListenerComponent(fsCEntity *pParent)
Definition fsIMessageListenerComponent.cpp:9
Definition fsStr.h:23
static const fsStr mAnagramPrefix
Definition gfCAnagramComponent.h:21
void serialiseDo() override
Definition gfCAnagramComponent.cpp:92
static fsIComponent * create(fsCEntity *pParent)
Definition gfCAnagramComponent.cpp:152
void deserialiseDo() override
Definition gfCAnagramComponent.cpp:87
friend class fsCComponentFactory
Definition gfCAnagramComponent.h:16
virtual ~gfCAnagramComponent()
Definition gfCAnagramComponent.cpp:164
static const fsCUniqueId mAnagramInitMsg
Definition gfCAnagramComponent.h:23
static const fsCUniqueId mTypeId
Definition gfCAnagramComponent.h:20
void listenersDeregisterDo() override
Definition gfCAnagramComponent.cpp:104
gfCAnagramComponent(fsCEntity *pParent)
Definition gfCAnagramComponent.cpp:158
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCAnagramComponent.cpp:111
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCAnagramComponent.cpp:147
void listenersRegisterDo() override
Definition gfCAnagramComponent.cpp:97
bool fsBool
Definition fsBaseTypes.h:26
Definition fsIMessageDispatcher.h:32
Definition gfCAnagramComponent.h:26
fsStr mAnagramSolution
Definition gfCAnagramComponent.h:28
fsStr mAnagram
Definition gfCAnagramComponent.h:27
fsStr mTileSet
Definition gfCAnagramComponent.h:29