1 /* 2 * 3 * (C) Copyright IBM Corp. and others 1998-2014 - All Rights Reserved 4 * 5 */ 6 7 #ifndef __TRIMMEDARRAYPROCESSOR2_H 8 #define __TRIMMEDARRAYPROCESSOR2_H 9 10 /** 11 * \file 12 * \internal 13 */ 14 15 #include "LETypes.h" 16 #include "MorphTables.h" 17 #include "SubtableProcessor2.h" 18 #include "NonContextualGlyphSubst.h" 19 #include "NonContextualGlyphSubstProc2.h" 20 21 U_NAMESPACE_BEGIN 22 23 class LEGlyphStorage; 24 25 class TrimmedArrayProcessor2 : public NonContextualGlyphSubstitutionProcessor2 26 { 27 public: 28 virtual void process(LEGlyphStorage &glyphStorage, LEErrorCode &success); 29 30 TrimmedArrayProcessor2(const LEReferenceTo<MorphSubtableHeader2> &morphSubtableHeader, LEErrorCode &success); 31 32 virtual ~TrimmedArrayProcessor2(); 33 34 /** 35 * ICU "poor man's RTTI", returns a UClassID for the actual class. 36 * 37 * @deprecated ICU 54. See {@link icu::LayoutEngine} 38 */ 39 virtual UClassID getDynamicClassID() const; 40 41 /** 42 * ICU "poor man's RTTI", returns a UClassID for this class. 43 * 44 * @deprecated ICU 54. See {@link icu::LayoutEngine} 45 */ 46 static UClassID getStaticClassID(); 47 48 private: 49 TrimmedArrayProcessor2(); 50 51 protected: 52 TTGlyphID firstGlyph; 53 TTGlyphID lastGlyph; 54 LEReferenceTo<TrimmedArrayLookupTable> trimmedArrayLookupTable; 55 LEReferenceToArrayOf<LookupValue> valueArray; 56 }; 57 58 U_NAMESPACE_END 59 #endif 60 61