sl@0: /* sl@0: * sl@0: * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved sl@0: * sl@0: */ sl@0: sl@0: #ifndef __NONCONTEXTUALGLYPHSUBSTITUTIONPROCESSOR_H sl@0: #define __NONCONTEXTUALGLYPHSUBSTITUTIONPROCESSOR_H sl@0: sl@0: /** sl@0: * \file sl@0: * \internal sl@0: */ sl@0: sl@0: #include "LETypes.h" sl@0: #include "MorphTables.h" sl@0: #include "SubtableProcessor.h" sl@0: #include "NonContextualGlyphSubst.h" sl@0: sl@0: U_NAMESPACE_BEGIN sl@0: sl@0: class LEGlyphStorage; sl@0: sl@0: class NonContextualGlyphSubstitutionProcessor : public SubtableProcessor sl@0: { sl@0: public: sl@0: virtual void process(LEGlyphStorage &glyphStorage) = 0; sl@0: sl@0: static SubtableProcessor *createInstance(const MorphSubtableHeader *morphSubtableHeader); sl@0: sl@0: protected: sl@0: NonContextualGlyphSubstitutionProcessor(); sl@0: NonContextualGlyphSubstitutionProcessor(const MorphSubtableHeader *morphSubtableHeader); sl@0: sl@0: virtual ~NonContextualGlyphSubstitutionProcessor(); sl@0: sl@0: private: sl@0: NonContextualGlyphSubstitutionProcessor(const NonContextualGlyphSubstitutionProcessor &other); // forbid copying of this class sl@0: NonContextualGlyphSubstitutionProcessor &operator=(const NonContextualGlyphSubstitutionProcessor &other); // forbid copying of this class sl@0: }; sl@0: sl@0: U_NAMESPACE_END sl@0: #endif