sl@0: /* sl@0: * sl@0: * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved sl@0: * sl@0: */ sl@0: sl@0: #ifndef __GLYPHPOSITIONINGLOOKUPPROCESSOR_H sl@0: #define __GLYPHPOSITIONINGLOOKUPPROCESSOR_H sl@0: sl@0: /** sl@0: * \file sl@0: * \internal sl@0: */ sl@0: sl@0: #include "LETypes.h" sl@0: #include "LEFontInstance.h" sl@0: #include "OpenTypeTables.h" sl@0: #include "Lookups.h" sl@0: #include "Features.h" sl@0: #include "GlyphDefinitionTables.h" sl@0: #include "GlyphPositioningTables.h" sl@0: #include "GlyphIterator.h" sl@0: #include "LookupProcessor.h" sl@0: sl@0: U_NAMESPACE_BEGIN sl@0: sl@0: class GlyphPositioningLookupProcessor : public LookupProcessor sl@0: { sl@0: public: sl@0: GlyphPositioningLookupProcessor(const GlyphPositioningTableHeader *glyphPositioningTableHeader, sl@0: LETag scriptTag, LETag languageTag, const LETag *featureOrder); sl@0: sl@0: virtual ~GlyphPositioningLookupProcessor(); sl@0: sl@0: virtual le_uint32 applySubtable(const LookupSubtable *lookupSubtable, sl@0: le_uint16 lookupType, GlyphIterator *glyphIterator, sl@0: const LEFontInstance *fontInstance, LEErrorCode& success) const; sl@0: sl@0: protected: sl@0: GlyphPositioningLookupProcessor(); sl@0: sl@0: private: sl@0: sl@0: GlyphPositioningLookupProcessor(const GlyphPositioningLookupProcessor &other); // forbid copying of this class sl@0: GlyphPositioningLookupProcessor &operator=(const GlyphPositioningLookupProcessor &other); // forbid copying of this class sl@0: }; sl@0: sl@0: U_NAMESPACE_END sl@0: #endif