~ubuntu-branches/ubuntu/wily/qtbase-opensource-src/wily

« back to all changes in this revision

Viewing changes to src/3rdparty/freetype/src/sfnt/ttcmap.h

  • Committer: Package Import Robot
  • Author(s): Timo Jyrinki
  • Date: 2013-02-05 12:46:17 UTC
  • Revision ID: package-import@ubuntu.com-20130205124617-c8jouts182j002fx
Tags: upstream-5.0.1+dfsg
ImportĀ upstreamĀ versionĀ 5.0.1+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/***************************************************************************/
 
2
/*                                                                         */
 
3
/*  ttcmap.h                                                               */
 
4
/*                                                                         */
 
5
/*    TrueType character mapping table (cmap) support (specification).     */
 
6
/*                                                                         */
 
7
/*  Copyright 2002, 2003, 2004, 2005 by                                    */
 
8
/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
 
9
/*                                                                         */
 
10
/*  This file is part of the FreeType project, and may only be used,       */
 
11
/*  modified, and distributed under the terms of the FreeType project      */
 
12
/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
 
13
/*  this file you indicate that you have read the license and              */
 
14
/*  understand and accept it fully.                                        */
 
15
/*                                                                         */
 
16
/***************************************************************************/
 
17
 
 
18
 
 
19
#ifndef __TTCMAP_H__
 
20
#define __TTCMAP_H__
 
21
 
 
22
 
 
23
#include <ft2build.h>
 
24
#include FT_INTERNAL_TRUETYPE_TYPES_H
 
25
#include FT_INTERNAL_VALIDATE_H
 
26
#include FT_SERVICE_TT_CMAP_H
 
27
 
 
28
FT_BEGIN_HEADER
 
29
 
 
30
 
 
31
#define TT_CMAP_FLAG_UNSORTED     1
 
32
#define TT_CMAP_FLAG_OVERLAPPING  2
 
33
 
 
34
  typedef struct  TT_CMapRec_
 
35
  {
 
36
    FT_CMapRec  cmap;
 
37
    FT_Byte*    data;           /* pointer to in-memory cmap table */
 
38
    FT_Int      flags;          /* for format 4 only               */
 
39
 
 
40
  } TT_CMapRec, *TT_CMap;
 
41
 
 
42
  typedef const struct TT_CMap_ClassRec_*  TT_CMap_Class;
 
43
 
 
44
 
 
45
  typedef FT_Error
 
46
  (*TT_CMap_ValidateFunc)( FT_Byte*      data,
 
47
                           FT_Validator  valid );
 
48
 
 
49
  typedef struct  TT_CMap_ClassRec_
 
50
  {
 
51
    FT_CMap_ClassRec      clazz;
 
52
    FT_UInt               format;
 
53
    TT_CMap_ValidateFunc  validate;
 
54
    TT_CMap_Info_GetFunc  get_cmap_info;
 
55
 
 
56
  } TT_CMap_ClassRec;
 
57
 
 
58
 
 
59
  typedef struct  TT_ValidatorRec_
 
60
  {
 
61
    FT_ValidatorRec  validator;
 
62
    FT_UInt          num_glyphs;
 
63
 
 
64
  } TT_ValidatorRec, *TT_Validator;
 
65
 
 
66
 
 
67
#define TT_VALIDATOR( x )          ((TT_Validator)( x ))
 
68
#define TT_VALID_GLYPH_COUNT( x )  TT_VALIDATOR( x )->num_glyphs
 
69
 
 
70
 
 
71
  FT_LOCAL( FT_Error )
 
72
  tt_face_build_cmaps( TT_Face  face );
 
73
 
 
74
  /* used in tt-cmaps service */
 
75
  FT_LOCAL( FT_Error )
 
76
  tt_get_cmap_info( FT_CharMap    charmap,
 
77
                    TT_CMapInfo  *cmap_info );
 
78
 
 
79
 
 
80
FT_END_HEADER
 
81
 
 
82
#endif /* __TTCMAP_H__ */
 
83
 
 
84
 
 
85
/* END */