1 /* 2 * 3 * (C) Copyright IBM Corp. 1998-2008 - All Rights Reserved 4 * 5 */ 6 7 #include "LETypes.h" 8 #include "LEGlyphFilter.h" 9 #include "OpenTypeTables.h" 10 #include "Lookups.h" 11 #include "GlyphDefinitionTables.h" 12 #include "GlyphSubstitutionTables.h" 13 #include "GlyphSubstLookupProc.h" 14 #include "ScriptAndLanguage.h" 15 #include "LEGlyphStorage.h" 16 #include "LESwaps.h" 17 18 U_NAMESPACE_BEGIN 19 20 le_int32 GlyphSubstitutionTableHeader::process(LEGlyphStorage &glyphStorage, 21 le_bool rightToLeft, 22 LETag scriptTag, 23 LETag languageTag, 24 const GlyphDefinitionTableHeader *glyphDefinitionTableHeader, 25 const LEGlyphFilter *filter, 26 const FeatureMap *featureMap, 27 le_int32 featureMapCount, 28 le_bool featureOrder, 29 LEErrorCode &success) const 30 { 31 if (LE_FAILURE(success)) { 32 return 0; 33 } 34 35 GlyphSubstitutionLookupProcessor processor(this, scriptTag, languageTag, filter, featureMap, featureMapCount, featureOrder, success); 36 return processor.process(glyphStorage, NULL, rightToLeft, glyphDefinitionTableHeader, NULL, success); 37 } 38 39 U_NAMESPACE_END 40