VoiceMan
|
The abstract interface for all language objects. More...
Public Types | |
enum | CharType { UpCase = 0, LowCase = 1, Other = 2 } |
Public Member Functions | |
virtual bool | equalChars (wchar_t c1, wchar_t c2) const =0 |
Checks if specified characters are represent same letter. | |
virtual void | expandNumbers (std::wstring &str, bool singleDigits) const =0 |
Replaces numbers with their word representation. | |
virtual std::wstring | getAllChars () const =0 |
Returns all characters of this language alphabet (in all cases) | |
virtual CharType | getCharType (wchar_t c) const =0 |
Returns type of specified character. | |
virtual void | markCapitals (const std::wstring &text, BoolVector &marks) const =0 |
Marks letters to speak separately (usual acronims) | |
virtual std::wstring | separate (const std::wstring &text) const =0 |
Inserts additional spaces to better words processing. | |
virtual wchar_t | toLower (wchar_t ch) const =0 |
Returns lower case of the specified character. | |
virtual std::wstring | toLower (const std::wstring &str) const =0 |
Returns lower case of the specified string. | |
virtual wchar_t | toUpper (wchar_t ch) const =0 |
Returns upper case of the specified character. | |
virtual std::wstring | toUpper (const std::wstring &str) const =0 |
Returns upper case of the specified string. | |
virtual | ~Lang () |
The destructor. |
Language objects are used to provide all language-specific information and unify all language operations. VoiceMan server has associated language object for all portions of text.Usually these objects are used to get set of characters, translate digits into words representation, perform case insensitive characters comparing and for some others.
virtual bool Lang::equalChars | ( | wchar_t | c1, |
wchar_t | c2 | ||
) | const [pure virtual] |
Almost in every language each letter can be represented in different cases and different characters are used. This method checks, if specified characters are represent the same letter.
[in] | c1 | The first character to compare |
[in] | c2 | The second character to compare |
virtual void Lang::expandNumbers | ( | std::wstring & | str, |
bool | singleDigits | ||
) | const [pure virtual] |
This method replaces all digits by their words representation with the rules of some language. Single digits mode replaces just each digit with corresponding word.
[in/out] | str The string to process | |
[in] | singleDigits | Process each digit as separate number |
virtual std::wstring Lang::getAllChars | ( | ) | const [pure virtual] |
virtual CharType Lang::getCharType | ( | wchar_t | c | ) | const [pure virtual] |
This method allows you to get class of specified character. It returns one of the following values: Lang::UpCase, Lang::LowCase or Lang::Other.
[in] | c | The character to get type of |
virtual void Lang::markCapitals | ( | const std::wstring & | text, |
BoolVector & | marks | ||
) | const [pure virtual] |
virtual std::wstring Lang::separate | ( | const std::wstring & | text | ) | const [pure virtual] |
This method inserts additional spaces to split words to avoid using capital letters in the middle of the words. If capital letter are used in the middle of the word this method will insert space before it. It is useful for Hungarian notation.
[in] | text | The string to process |
virtual wchar_t Lang::toLower | ( | wchar_t | ch | ) | const [pure virtual] |
virtual std::wstring Lang::toLower | ( | const std::wstring & | str | ) | const [pure virtual] |
virtual wchar_t Lang::toUpper | ( | wchar_t | ch | ) | const [pure virtual] |