1/* 2 * 3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved 4 * 5 */ 6 7#ifndef __NONCONTEXTUALGLYPHSUBSTITUTIONPROCESSOR_H 8#define __NONCONTEXTUALGLYPHSUBSTITUTIONPROCESSOR_H 9 10/** 11 * \file 12 * \internal 13 */ 14 15#include "LETypes.h" 16#include "MorphTables.h" 17#include "SubtableProcessor.h" 18#include "NonContextualGlyphSubst.h" 19 20U_NAMESPACE_BEGIN 21 22class LEGlyphStorage; 23 24class NonContextualGlyphSubstitutionProcessor : public SubtableProcessor 25{ 26public: 27 virtual void process(LEGlyphStorage &glyphStorage, LEErrorCode &success) = 0; 28 29 static SubtableProcessor *createInstance(const LEReferenceTo<MorphSubtableHeader> &morphSubtableHeader, LEErrorCode &success); 30 31protected: 32 NonContextualGlyphSubstitutionProcessor(); 33 NonContextualGlyphSubstitutionProcessor(const LEReferenceTo<MorphSubtableHeader> &morphSubtableHeader, LEErrorCode &status); 34 35 virtual ~NonContextualGlyphSubstitutionProcessor(); 36 37private: 38 NonContextualGlyphSubstitutionProcessor(const NonContextualGlyphSubstitutionProcessor &other); // forbid copying of this class 39 NonContextualGlyphSubstitutionProcessor &operator=(const NonContextualGlyphSubstitutionProcessor &other); // forbid copying of this class 40}; 41 42U_NAMESPACE_END 43#endif 44