source: trunk/poppler/freetype2/include/freetype/internal/services/svsfnt.h @ 269

Last change on this file since 269 was 150, checked in by Eugene Romanenko, 15 years ago

update freetype to 2.2.1

File size: 2.4 KB
Line 
1/***************************************************************************/
2/*                                                                         */
3/*  svsfnt.h                                                               */
4/*                                                                         */
5/*    The FreeType SFNT table loading service (specification).             */
6/*                                                                         */
7/*  Copyright 2003, 2004 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 __SVSFNT_H__
20#define __SVSFNT_H__
21
22#include FT_INTERNAL_SERVICE_H
23#include FT_TRUETYPE_TABLES_H
24
25
26FT_BEGIN_HEADER
27
28
29  /*
30   *  SFNT table loading service.
31   */
32
33#define FT_SERVICE_ID_SFNT_TABLE  "sfnt-table"
34
35
36  /*
37   * Used to implement FT_Load_Sfnt_Table().
38   */
39  typedef FT_Error
40  (*FT_SFNT_TableLoadFunc)( FT_Face    face,
41                            FT_ULong   tag,
42                            FT_Long    offset,
43                            FT_Byte*   buffer,
44                            FT_ULong*  length );
45
46  /*
47   * Used to implement FT_Get_Sfnt_Table().
48   */
49  typedef void*
50  (*FT_SFNT_TableGetFunc)( FT_Face      face,
51                           FT_Sfnt_Tag  tag );
52
53
54  /*
55   * Used to implement FT_Sfnt_Table_Info().
56   */
57  typedef FT_Error
58  (*FT_SFNT_TableInfoFunc)( FT_Face    face,
59                            FT_UInt    idx,
60                            FT_ULong  *tag,
61                            FT_ULong  *length );
62
63
64  FT_DEFINE_SERVICE( SFNT_Table )
65  {
66    FT_SFNT_TableLoadFunc  load_table;
67    FT_SFNT_TableGetFunc   get_table;
68    FT_SFNT_TableInfoFunc  table_info;
69  };
70
71  /* */
72
73
74FT_END_HEADER
75
76
77#endif /* __SVSFNT_H__ */
78
79
80/* END */
Note: See TracBrowser for help on using the repository browser.