summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h')
-rw-r--r--Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h108
1 files changed, 0 insertions, 108 deletions
diff --git a/Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h b/Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h
deleted file mode 100644
index 4c6d6a51f4f..00000000000
--- a/Build/source/libs/icu/icu-src/source/layout/ThaiShaping.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- *
- * (C) Copyright IBM Corp. 1998-2005 - All Rights Reserved
- *
- */
-
-#ifndef __THAISHAPING_H
-#define __THAISHAPING_H
-
-/**
- * \file
- * \internal
- */
-
-#include "LETypes.h"
-#include "LEGlyphFilter.h"
-#include "OpenTypeTables.h"
-
-U_NAMESPACE_BEGIN
-
-class LEGlyphStorage;
-
-class ThaiShaping /* not : public UObject because all methods are static */ {
-public:
-
- enum {
- // Character classes
- NON = 0,
- CON = 1,
- COA = 2,
- COD = 3,
- LVO = 4,
- FV1 = 5,
- FV2 = 6,
- FV3 = 7,
- BV1 = 8,
- BV2 = 9,
- BDI = 10,
- TON = 11,
- AD1 = 12,
- AD2 = 13,
- AD3 = 14,
- NIK = 15,
- AV1 = 16,
- AV2 = 17,
- AV3 = 18,
- classCount = 19,
-
- // State Transition actions
- tA = 0,
- tC = 1,
- tD = 2,
- tE = 3,
- tF = 4,
- tG = 5,
- tH = 6,
- tR = 7,
- tS = 8
- };
-
- struct StateTransition
- {
- le_uint8 nextState;
- le_uint8 action;
-
- le_uint8 getNextState() { return nextState; };
- le_uint8 getAction() { return action; };
- };
-
- static le_int32 compose(const LEUnicode *input, le_int32 offset, le_int32 charCount, le_uint8 glyphSet,
- LEUnicode errorChar, LEUnicode *output, LEGlyphStorage &glyphStorage);
-
-private:
- // forbid instantiation
- ThaiShaping();
-
- static const le_uint8 classTable[];
- static const StateTransition thaiStateTable[][classCount];
-
- inline static StateTransition getTransition(le_uint8 state, le_uint8 currClass);
-
- static le_uint8 doTransition(StateTransition transition, LEUnicode currChar, le_int32 inputIndex, le_uint8 glyphSet,
- LEUnicode errorChar, LEUnicode *outputBuffer, LEGlyphStorage &glyphStorage, le_int32 &outputIndex);
-
- static le_uint8 getNextState(LEUnicode ch, le_uint8 state, le_int32 inputIndex, le_uint8 glyphSet, LEUnicode errorChar,
- le_uint8 &charClass, LEUnicode *output, LEGlyphStorage &glyphStorage, le_int32 &outputIndex);
-
- static le_bool isLegalHere(LEUnicode ch, le_uint8 prevState);
- static le_uint8 getCharClass(LEUnicode ch);
-
- static LEUnicode noDescenderCOD(LEUnicode cod, le_uint8 glyphSet);
- static LEUnicode leftAboveVowel(LEUnicode vowel, le_uint8 glyphSet);
- static LEUnicode lowerBelowVowel(LEUnicode vowel, le_uint8 glyphSet);
- static LEUnicode lowerRightTone(LEUnicode tone, le_uint8 glyphSet);
- static LEUnicode lowerLeftTone(LEUnicode tone, le_uint8 glyphSet);
- static LEUnicode upperLeftTone(LEUnicode tone, le_uint8 glyphSet);
-
-};
-
-inline ThaiShaping::StateTransition ThaiShaping::getTransition(le_uint8 state, le_uint8 currClass)
-{
- return thaiStateTable[state][currClass];
-}
-
-U_NAMESPACE_END
-#endif
-
-