[FREETYPE]
[reactos.git] / reactos / lib / 3rdparty / freetype / include / freetype / internal / services / svttcmap.h
index 1e02d15..8af0035 100644 (file)
@@ -1,13 +1,13 @@
 /***************************************************************************/
 /*                                                                         */
-/*  svsttcmap.h                                                            */
+/*  svttcmap.h                                                             */
 /*                                                                         */
 /*    The FreeType TrueType/sfnt cmap extra information service.           */
 /*                                                                         */
 /*  Copyright 2003 by                                                      */
 /*  Masatake YAMATO, Redhat K.K.                                           */
 /*                                                                         */
-/*  Copyright 2003 by                                                      */
+/*  Copyright 2003, 2008 by                                                */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -49,6 +49,13 @@ FT_BEGIN_HEADER
   /*      The language ID used in Mac fonts.  Definitions of values are in */
   /*      freetype/ttnameid.h.                                             */
   /*                                                                       */
+  /*    format ::                                                          */
+  /*      The cmap format.  OpenType 1.5 defines the formats 0 (byte       */
+  /*      encoding table), 2~(high-byte mapping through table), 4~(segment */
+  /*      mapping to delta values), 6~(trimmed table mapping), 8~(mixed    */
+  /*      16-bit and 32-bit coverage), 10~(trimmed array), 12~(segmented   */
+  /*      coverage), and 14 (Unicode Variation Sequences).                 */
+  /*                                                                       */
   typedef struct  TT_CMapInfo_
   {
     FT_ULong language;
@@ -67,6 +74,27 @@ FT_BEGIN_HEADER
     TT_CMap_Info_GetFunc  get_cmap_info;
   };
 
+#ifndef FT_CONFIG_OPTION_PIC
+
+#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_)  \
+  static const FT_Service_TTCMapsRec class_ =                 \
+  {                                                           \
+    get_cmap_info_                                            \
+  };
+
+#else /* FT_CONFIG_OPTION_PIC */ 
+
+#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_) \
+  void                                                       \
+  FT_Init_Class_##class_( FT_Library library,                \
+                          FT_Service_TTCMapsRec*  clazz)     \
+  {                                                          \
+    FT_UNUSED(library);                                      \
+    clazz->get_cmap_info = get_cmap_info_;                   \
+  } 
+
+#endif /* FT_CONFIG_OPTION_PIC */ 
+
   /* */