Home | History | Annotate | Download | only in layout
      1 /*
      2  *
      3  * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
      4  *
      5  */
      6 
      7 #ifndef __OPENTYPETABLES_H
      8 #define __OPENTYPETABLES_H
      9 
     10 /**
     11  * \file
     12  * \internal
     13  */
     14 
     15 #include "LETypes.h"
     16 #include "LETableReference.h"
     17 
     18 U_NAMESPACE_BEGIN
     19 
     20 #define ANY_NUMBER 1
     21 
     22 typedef le_uint16 Offset;
     23 typedef le_uint8  ATag[4];
     24 typedef le_uint32 fixed32;
     25 
     26 #define LE_GLYPH_GROUP_MASK 0x00000001UL
     27 typedef le_uint32 FeatureMask;
     28 
     29 #define SWAPT(atag) ((LETag) (((atag[0]) << 24) + ((atag[1]) << 16) + ((atag[2]) << 8) + (atag[3])))
     30 
     31 struct TagAndOffsetRecord
     32 {
     33     ATag   tag;
     34     Offset offset;
     35 };
     36 
     37 struct GlyphRangeRecord
     38 {
     39     TTGlyphID firstGlyph;
     40     TTGlyphID lastGlyph;
     41     le_int16  rangeValue;
     42 };
     43 
     44 struct FeatureMap
     45 {
     46     LETag       tag;
     47     FeatureMask mask;
     48 };
     49 
     50 U_NAMESPACE_END
     51 #endif
     52