diff -r 000000000000 -r 1fb32624e06b fontservices/textshaperplugin/IcuSource/layout/GlyphSubstLookupProc.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fontservices/textshaperplugin/IcuSource/layout/GlyphSubstLookupProc.h Tue Feb 02 02:02:46 2010 +0200 @@ -0,0 +1,51 @@ +/* + * %W% %E% + * + * (C) Copyright IBM Corp. 1998-2003 - All Rights Reserved + * + */ + +#ifndef __GLYPHSUBSTITUTIONLOOKUPPROCESSOR_H +#define __GLYPHSUBSTITUTIONLOOKUPPROCESSOR_H + +/** + * \file + * \internal + */ + +#include "LETypes.h" +#include "LEGlyphFilter.h" +#include "LEFontInstance.h" +#include "OpenTypeTables.h" +#include "Lookups.h" +#include "Features.h" +#include "GlyphDefinitionTables.h" +#include "GlyphSubstitutionTables.h" +#include "GlyphIterator.h" +#include "LookupProcessor.h" + +U_NAMESPACE_BEGIN + +class GlyphSubstitutionLookupProcessor : public LookupProcessor +{ +public: + GlyphSubstitutionLookupProcessor(const GlyphSubstitutionTableHeader *glyphSubstitutionTableHeader, + LETag scriptTag, LETag languageTag, const LEGlyphFilter *filter = NULL, const LETag *featureOrder = NULL); + + virtual ~GlyphSubstitutionLookupProcessor(); + + virtual le_uint32 applySubtable(const LookupSubtable *lookupSubtable, le_uint16 lookupType, GlyphIterator *glyphIterator, + const LEFontInstance *fontInstance, LEErrorCode& success) const; + +protected: + GlyphSubstitutionLookupProcessor(); + +private: + const LEGlyphFilter *fFilter; + + GlyphSubstitutionLookupProcessor(const GlyphSubstitutionLookupProcessor &other); // forbid copying of this class + GlyphSubstitutionLookupProcessor &operator=(const GlyphSubstitutionLookupProcessor &other); // forbid copying of this class +}; + +U_NAMESPACE_END +#endif