1 #ifndef __alphabetmanagerfactory_h__
2 #define __alphabetmanagerfactory_h__
4 #include "AlphabetManager.h"
5 #include "NodeManagerFactory.h"
6 #include "LanguageModelling/LanguageModel.h"
8 class CNodeCreationManager
;
12 class CDasherInterfaceBase
;
16 class CAlphabetManagerFactory
: public CNodeManagerFactory
{
20 CTrainer(CLanguageModel
*pLanguageModel
);
22 void Train(const std::vector
< symbol
> &vSymbols
);
27 CLanguageModel
*m_pLanguageModel
;
28 CLanguageModel::Context m_Context
;
31 CAlphabetManagerFactory(CDasherInterfaceBase
*pInterface
, CEventHandler
*pEventHandler
, CSettingsStore
*pSettingsStore
, Dasher::CAlphIO
*pAlphIO
, CNodeCreationManager
*pNCManager
, bool bGameMode
, const std::string
&strGameModeText
);
33 // CAlphabetManagerFactory( CDasherModel *pModel, CLanguageModel *pLanguageModel, bool bGameMode, const std::string &strGameModeText );
34 ~CAlphabetManagerFactory();
36 virtual CDasherNode
*GetRoot(CDasherNode
*pParent
, int iLower
, int iUpper
, void *pUserData
);
39 /// Functions for backwards compatibility - hopefully these will
40 /// be eliminated to a great extent sometime in the future
43 CLanguageModel
*GetLanguageModel() {
44 return m_pLanguageModel
;
47 CLanguageModel::Context
GetLearnContext() {
48 return m_iLearnContext
;
51 CAlphabet
*GetAlphabet() {
55 int GetConversionID() {
56 return m_iConversionID
;
59 CTrainer
*GetTrainer();
62 CAlphabetManager
*m_pAlphabetManager
;
64 CLanguageModel
*m_pLanguageModel
; // pointer to the language model
65 CLanguageModel::Context m_iLearnContext
; // Used to add data to model as it is entered
66 CAlphabet
*m_pAlphabet
; // pointer to the alphabet