]> git.saurik.com Git - apple/icu.git/blob - icuSources/layout/GlyphSubstLookupProc.h
ICU-6.2.4.tar.gz
[apple/icu.git] / icuSources / layout / GlyphSubstLookupProc.h
1 /*
2 * %W% %E%
3 *
4 * (C) Copyright IBM Corp. 1998-2003 - All Rights Reserved
5 *
6 */
7
8 #ifndef __GLYPHSUBSTITUTIONLOOKUPPROCESSOR_H
9 #define __GLYPHSUBSTITUTIONLOOKUPPROCESSOR_H
10
11 /**
12 * \file
13 * \internal
14 */
15
16 #include "LETypes.h"
17 #include "LEGlyphFilter.h"
18 #include "LEFontInstance.h"
19 #include "OpenTypeTables.h"
20 #include "Lookups.h"
21 #include "Features.h"
22 #include "GlyphDefinitionTables.h"
23 #include "GlyphSubstitutionTables.h"
24 #include "GlyphIterator.h"
25 #include "LookupProcessor.h"
26
27 U_NAMESPACE_BEGIN
28
29 class GlyphSubstitutionLookupProcessor : public LookupProcessor
30 {
31 public:
32 GlyphSubstitutionLookupProcessor(const GlyphSubstitutionTableHeader *glyphSubstitutionTableHeader,
33 LETag scriptTag, LETag languageTag, const LEGlyphFilter *filter = NULL, const LETag *featureOrder = NULL);
34
35 virtual ~GlyphSubstitutionLookupProcessor();
36
37 virtual le_uint32 applySubtable(const LookupSubtable *lookupSubtable, le_uint16 lookupType, GlyphIterator *glyphIterator,
38 const LEFontInstance *fontInstance) const;
39
40 protected:
41 GlyphSubstitutionLookupProcessor();
42
43 private:
44 const LEGlyphFilter *fFilter;
45
46 GlyphSubstitutionLookupProcessor(const GlyphSubstitutionLookupProcessor &other); // forbid copying of this class
47 GlyphSubstitutionLookupProcessor &operator=(const GlyphSubstitutionLookupProcessor &other); // forbid copying of this class
48 };
49
50 U_NAMESPACE_END
51 #endif