fontservices/textshaperplugin/IcuSource/layout/StateTables.h
changeset 0 1fb32624e06b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fontservices/textshaperplugin/IcuSource/layout/StateTables.h	Tue Feb 02 02:02:46 2010 +0200
@@ -0,0 +1,65 @@
+/*
+ *
+ * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved
+ *
+ */
+
+#ifndef __STATETABLES_H
+#define __STATETABLES_H
+
+/**
+ * \file
+ * \internal
+ */
+
+#include "LETypes.h"
+#include "LayoutTables.h"
+
+U_NAMESPACE_BEGIN
+
+struct StateTableHeader
+{
+    le_int16 stateSize;
+    ByteOffset classTableOffset;
+    ByteOffset stateArrayOffset;
+    ByteOffset entryTableOffset;
+};
+
+enum ClassCodes
+{
+    classCodeEOT = 0,
+    classCodeOOB = 1,
+    classCodeDEL = 2,
+    classCodeEOL = 3,
+    classCodeFirstFree = 4,
+    classCodeMAX = 0xFF
+};
+
+typedef le_uint8 ClassCode;
+
+struct ClassTable
+{
+    TTGlyphID firstGlyph;
+    le_uint16 nGlyphs;
+    ClassCode classArray[ANY_NUMBER];
+};
+
+enum StateNumber
+{
+    stateSOT        = 0,
+    stateSOL        = 1,
+    stateFirstFree  = 2,
+    stateMAX        = 0xFF
+};
+
+typedef le_uint8 EntryTableIndex;
+
+struct StateEntry
+{
+    ByteOffset  newStateOffset;
+    le_int16    flags;
+};
+
+U_NAMESPACE_END
+#endif
+