1049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/
2049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
3049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  t1cmap.h                                                               */
4049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
5049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*    Type 1 character map support (specification).                        */
6049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
7049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  Copyright 2002, 2003, 2006 by                                          */
8049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
9049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
10049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  This file is part of the FreeType project, and may only be used,       */
11049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  modified, and distributed under the terms of the FreeType project      */
12049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
13049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  this file you indicate that you have read the license and              */
14049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*  understand and accept it fully.                                        */
15049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/*                                                                         */
16049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/***************************************************************************/
17049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
18049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
19049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#ifndef __T1CMAP_H__
20049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#define __T1CMAP_H__
21049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
22049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include <ft2build.h>
23049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include FT_INTERNAL_OBJECTS_H
24049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#include FT_INTERNAL_TYPE1_TYPES_H
25049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
26049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_BEGIN_HEADER
27049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
28049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
29049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
30049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
31049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
32049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****          TYPE1 STANDARD (AND EXPERT) ENCODING CMAPS           *****/
33049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
34049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
35049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
36049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
37049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /* standard (and expert) encoding cmaps */
38049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  typedef struct T1_CMapStdRec_*  T1_CMapStd;
39049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
40049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  typedef struct  T1_CMapStdRec_
41049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  {
42049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_CMapRec                cmap;
43049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
44049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    const FT_UShort*          code_to_sid;
45049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    PS_Adobe_Std_StringsFunc  sid_to_string;
46049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
47049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_UInt                   num_glyphs;
48049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    const char* const*        glyph_names;
49049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
50049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  } T1_CMapStdRec;
51049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
52049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
53049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_CALLBACK_TABLE const FT_CMap_ClassRec
54049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  t1_cmap_standard_class_rec;
55049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
56049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_CALLBACK_TABLE const FT_CMap_ClassRec
57049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  t1_cmap_expert_class_rec;
58049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
59049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
60049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
61049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
62049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
63049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                  TYPE1 CUSTOM ENCODING CMAP                   *****/
64049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
65049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
66049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
67049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
68049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  typedef struct T1_CMapCustomRec_*  T1_CMapCustom;
69049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
70049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  typedef struct  T1_CMapCustomRec_
71049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  {
72049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_CMapRec  cmap;
73049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_UInt     first;
74049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_UInt     count;
75049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project    FT_UShort*  indices;
76049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
77049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  } T1_CMapCustomRec;
78049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
79049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
80049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_CALLBACK_TABLE const FT_CMap_ClassRec
81049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  t1_cmap_custom_class_rec;
82049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
83049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
84049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
85049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
86049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
87049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****             TYPE1 SYNTHETIC UNICODE ENCODING CMAP             *****/
88049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*****                                                               *****/
89049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
90049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /*************************************************************************/
91049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
92049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  /* unicode (synthetic) cmaps */
93049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
94049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  FT_CALLBACK_TABLE const FT_CMap_ClassRec
95049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project  t1_cmap_unicode_class_rec;
96049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
97049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project /* */
98049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
99049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
100049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source ProjectFT_END_HEADER
101049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
102049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project#endif /* __T1CMAP_H__ */
103049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
104049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project
105049d6fea481044fcc000e7782e5bc7046fc70844The Android Open Source Project/* END */
106