Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Lookups.h

Go to the documentation of this file.
00001 /*
00002  * @(#)Lookups.h        1.5 00/03/15
00003  *
00004  * (C) Copyright IBM Corp. 1998, 1999, 2000 - All Rights Reserved
00005  *
00006  */
00007 
00008 #ifndef __LOOKUPS_H
00009 #define __LOOKUPS_H
00010 
00011 #include "LETypes.h"
00012 #include "OpenTypeTables.h"
00013 
00014 enum LookupFlags
00015 {
00016     lfReservedBit           = 0x0001,
00017     lfIgnoreBaseGlyphs      = 0x0002,
00018     lfIgnoreLigatures       = 0x0004,
00019     lfIgnoreMarks           = 0x0008,
00020     lfReservedMask          = 0x00F0,
00021     lfMarkAttachTypeMask    = 0xFF00,
00022     lfMarkAttachTypeShift   = 8
00023 };
00024 
00025 struct LookupSubtable
00026 {
00027     le_uint16 subtableFormat;
00028     Offset    coverageTableOffset;
00029 
00030     le_int32  getGlyphCoverage(LEGlyphID glyphID);
00031     le_int32  getGlyphCoverage(Offset tableOffset, LEGlyphID glyphID);
00032 };
00033 
00034 struct LookupTable
00035 {
00036     le_uint16       lookupType;
00037     le_uint16       lookupFlags;
00038     le_uint16       subTableCount;
00039     Offset          subTableOffsetArray[ANY_NUMBER];
00040 
00041     LookupSubtable  *getLookupSubtable(le_uint16 subtableIndex);
00042 };
00043 
00044 struct LookupListTable
00045 {
00046     le_uint16   lookupCount;
00047     Offset      lookupTableOffsetArray[ANY_NUMBER];
00048 
00049     LookupTable *getLookupTable(le_uint16 lookupTableIndex);
00050 };
00051 
00052 inline le_int32 LookupSubtable::getGlyphCoverage(LEGlyphID glyphID)
00053 {
00054     return getGlyphCoverage(coverageTableOffset, glyphID);
00055 }
00056 
00057 
00058 
00059 #endif

Generated at Tue Dec 5 18:13:02 2000 for ICU by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000