Updated German translation
[dasher.git] / Src / DasherCore / ConvertingAlphMgr.h
blobc1760ce6f499f8cb11217064fd72872ea0f0482c
1 /*
2 * ConvertingAlphMgr.h
3 * Dasher
5 * Created by Alan Lawrence on 06/08/2010.
6 * Copyright 2010 Cavendish Laboratory. All rights reserved.
8 */
10 #ifndef __CONVERTING_ALPH_MGR_H__
11 #define __CONVERTING_ALPH_MGR_H__
13 #include "AlphabetManager.h"
14 #include "ConversionManager.h"
16 namespace Dasher {
17 //TODO Need to override CreateLanguageModel to use something appropriate for conversion.
18 // The created model, needs to have a GetSize() _including_ the conversion node
19 // (as this is not included in the Alphabet's GetNumberTextSymbols).
20 //TODO in fact IterateChildGroups will not include the conversion symbol (expected by
21 // CreateSymbolNode below) either, as it stops at Alphabet GetNumberTextSymbols too...
22 //TODO do we also need to override GetProbs? Existing impl will add uniformity onto the conversion root too.
23 class CConvertingAlphMgr : public CAlphabetManager {
24 public:
25 CConvertingAlphMgr(CSettingsUser *pCreateFrom, CDasherInterfaceBase *pInterface, CNodeCreationManager *pNCManager, CConversionManager *pConvMgr, const CAlphInfo *pAlphabet);
26 ///Override to also tell the ConversionManager that the screen has changed.
27 void MakeLabels(CDasherScreen *pScreen);
28 virtual ~CConvertingAlphMgr();
29 protected:
30 ///Override to return a conversion root for iSymbol==(one beyond last alphabet symbol)
31 virtual CDasherNode *CreateSymbolNode(CAlphNode *pParent, symbol iSymbol);
32 private:
33 CConversionManager *m_pConvMgr;
35 //TODO do we need to override
36 //void GetProbs(vector<unsigned int> *pProbInfo, CLanguageModel::Context context);
37 //to do something for the conversion symbol, or does the LM do that for us???
41 #endif