]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/layout/GlyphPositioningTables.h
ICU-511.27.tar.gz
[apple/icu.git] / icuSources / layout / GlyphPositioningTables.h
index 7b0ace9ed81e33bfb49af4744bd7790a95fc8fd1..590488cd67970d69cdfd57a1e04ea1f447f7798e 100644 (file)
@@ -1,7 +1,5 @@
 /*
- * @(#)GlyphPositioningTables.h        1.7 00/03/15
- *
- * (C) Copyright IBM Corp. 1998-2003 - All Rights Reserved
+ * (C) Copyright IBM Corp. 1998-2008 - All Rights Reserved
  *
  */
 
  */
 
 #include "LETypes.h"
-#include "LEFontInstance.h"
 #include "OpenTypeTables.h"
 #include "Lookups.h"
-#include "GlyphDefinitionTables.h"
-#include "GlyphPositionAdjustments.h"
+#include "GlyphLookupTables.h"
 
 U_NAMESPACE_BEGIN
 
-struct GlyphPositioningTableHeader
-{
-    fixed32 version;
-    Offset  scriptListOffset;
-    Offset  featureListOffset;
-    Offset  lookupListOffset;
+class  LEFontInstance;
+class  LEGlyphStorage;
+class  LEGlyphFilter;
+class  GlyphPositionAdjustments;
+struct GlyphDefinitionTableHeader;
 
-    void    process(LEGlyphID *glyphs, GlyphPositionAdjustment *glyphPositionAdjustments,
-                const LETag **glyphTags, le_int32 glyphCount,
+struct GlyphPositioningTableHeader : public GlyphLookupTableHeader
+{
+    void    process(LEGlyphStorage &glyphStorage, GlyphPositionAdjustments *glyphPositionAdjustments,
                 le_bool rightToLeft, LETag scriptTag, LETag languageTag,
-                const GlyphDefinitionTableHeader *glyphDefinitionTableHeader,
-                const LEFontInstance *fontInstance, const LETag *featureOrder) const;
+                const GlyphDefinitionTableHeader *glyphDefinitionTableHeader, LEErrorCode &success,
+                const LEFontInstance *fontInstance, const FeatureMap *featureMap, le_int32 featureMapCount, le_bool featureOrder) const;
 };
 
 enum GlyphPositioningSubtableTypes