Imported Upstream version 2.13.2
[platform/upstream/freetype2.git] / include / freetype / internal / services / svgxval.h
1 /****************************************************************************
2  *
3  * svgxval.h
4  *
5  *   FreeType API for validating TrueTypeGX/AAT tables (specification).
6  *
7  * Copyright (C) 2004-2023 by
8  * Masatake YAMATO, Red Hat K.K.,
9  * David Turner, Robert Wilhelm, and Werner Lemberg.
10  *
11  * This file is part of the FreeType project, and may only be used,
12  * modified, and distributed under the terms of the FreeType project
13  * license, LICENSE.TXT.  By continuing to use, modify, or distribute
14  * this file you indicate that you have read the license and
15  * understand and accept it fully.
16  *
17  */
18
19 /****************************************************************************
20  *
21  * gxvalid is derived from both gxlayout module and otvalid module.
22  * Development of gxlayout is supported by the Information-technology
23  * Promotion Agency(IPA), Japan.
24  *
25  */
26
27
28 #ifndef SVGXVAL_H_
29 #define SVGXVAL_H_
30
31 #include <freetype/ftgxval.h>
32 #include <freetype/internal/ftvalid.h>
33
34 FT_BEGIN_HEADER
35
36
37 #define FT_SERVICE_ID_GX_VALIDATE           "truetypegx-validate"
38 #define FT_SERVICE_ID_CLASSICKERN_VALIDATE  "classickern-validate"
39
40   typedef FT_Error
41   (*gxv_validate_func)( FT_Face   face,
42                         FT_UInt   gx_flags,
43                         FT_Bytes  tables[FT_VALIDATE_GX_LENGTH],
44                         FT_UInt   table_length );
45
46
47   typedef FT_Error
48   (*ckern_validate_func)( FT_Face   face,
49                           FT_UInt   ckern_flags,
50                           FT_Bytes  *ckern_table );
51
52
53   FT_DEFINE_SERVICE( GXvalidate )
54   {
55     gxv_validate_func  validate;
56   };
57
58   FT_DEFINE_SERVICE( CKERNvalidate )
59   {
60     ckern_validate_func  validate;
61   };
62
63   /* */
64
65
66 FT_END_HEADER
67
68
69 #endif /* SVGXVAL_H_ */
70
71
72 /* END */