~oif-team/ubuntu/natty/qt4-x11/xi2.1

« back to all changes in this revision

Viewing changes to src/3rdparty/freetype/include/freetype/cache/ftcsbits.h

  • Committer: Bazaar Package Importer
  • Author(s): Adam Conrad
  • Date: 2005-08-24 04:09:09 UTC
  • Revision ID: james.westby@ubuntu.com-20050824040909-xmxe9jfr4a0w5671
Tags: upstream-4.0.0
ImportĀ upstreamĀ versionĀ 4.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/***************************************************************************/
 
2
/*                                                                         */
 
3
/*  ftcsbits.h                                                             */
 
4
/*                                                                         */
 
5
/*    A small-bitmap cache (specification).                                */
 
6
/*                                                                         */
 
7
/*  Copyright 2000-2001, 2002, 2003 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 __FTCSBITS_H__
 
20
#define __FTCSBITS_H__
 
21
 
 
22
 
 
23
#include <ft2build.h>
 
24
#include FT_CACHE_H
 
25
#include FT_CACHE_INTERNAL_GLYPH_H
 
26
 
 
27
 
 
28
FT_BEGIN_HEADER
 
29
 
 
30
#define FTC_SBIT_ITEMS_PER_NODE  16
 
31
 
 
32
  typedef struct  FTC_SNodeRec_
 
33
  {
 
34
    FTC_GNodeRec  gnode;
 
35
    FT_UInt       count;
 
36
    FTC_SBitRec   sbits[FTC_SBIT_ITEMS_PER_NODE];
 
37
 
 
38
  } FTC_SNodeRec, *FTC_SNode;
 
39
 
 
40
 
 
41
#define FTC_SNODE( x )         ( (FTC_SNode)( x ) )
 
42
#define FTC_SNODE_GINDEX( x )  FTC_GNODE( x )->gindex
 
43
#define FTC_SNODE_FAMILY( x )  FTC_GNODE( x )->family
 
44
 
 
45
  typedef FT_UInt
 
46
  (*FTC_SFamily_GetCountFunc)( FTC_Family   family,
 
47
                               FTC_Manager  manager );
 
48
 
 
49
  typedef FT_Error
 
50
  (*FTC_SFamily_LoadGlyphFunc)( FTC_Family   family,
 
51
                                FT_UInt      gindex,
 
52
                                FTC_Manager  manager,
 
53
                                FT_Face     *aface );
 
54
 
 
55
  typedef struct  FTC_SFamilyClassRec_
 
56
  {
 
57
    FTC_MruListClassRec        clazz;
 
58
    FTC_SFamily_GetCountFunc   family_get_count;
 
59
    FTC_SFamily_LoadGlyphFunc  family_load_glyph;
 
60
 
 
61
  } FTC_SFamilyClassRec;
 
62
 
 
63
  typedef const FTC_SFamilyClassRec*  FTC_SFamilyClass;
 
64
 
 
65
#define FTC_SFAMILY_CLASS( x )  ((FTC_SFamilyClass)(x))
 
66
 
 
67
#define FTC_CACHE__SFAMILY_CLASS( x )  \
 
68
          FTC_SFAMILY_CLASS( FTC_CACHE__GCACHE_CLASS( x )->family_class )
 
69
 
 
70
 
 
71
  FT_EXPORT( void )
 
72
  FTC_SNode_Free( FTC_SNode  snode,
 
73
                  FTC_Cache  cache );
 
74
 
 
75
  FT_EXPORT( FT_Error )
 
76
  FTC_SNode_New( FTC_SNode   *psnode,
 
77
                 FTC_GQuery   gquery,
 
78
                 FTC_Cache    cache );
 
79
 
 
80
  FT_EXPORT( FT_ULong )
 
81
  FTC_SNode_Weight( FTC_SNode  inode );
 
82
 
 
83
 
 
84
  FT_EXPORT( FT_Bool )
 
85
  FTC_SNode_Compare( FTC_SNode   snode,
 
86
                     FTC_GQuery  gquery,
 
87
                     FTC_Cache   cache );
 
88
 
 
89
  /* */
 
90
 
 
91
FT_END_HEADER
 
92
 
 
93
#endif /* __FTCSBITS_H__ */
 
94
 
 
95
 
 
96
/* END */