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