1 /**************************************************************************** 2 * 3 * otvalid.h 4 * 5 * OpenType table validation (specification only). 6 * 7 * Copyright 2004-2018 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 OTVALID_H_ 20 #define OTVALID_H_ 21 22 23 #include <ft2build.h> 24 #include FT_FREETYPE_H 25 26 #include "otverror.h" /* must come before FT_INTERNAL_VALIDATE_H */ 27 28 #include FT_INTERNAL_VALIDATE_H 29 #include FT_INTERNAL_STREAM_H 30 31 32 FT_BEGIN_HEADER 33 34 35 FT_LOCAL( void ) 36 otv_BASE_validate( FT_Bytes table, 37 FT_Validator valid ); 38 39 /* GSUB and GPOS tables should already be validated; */ 40 /* if missing, set corresponding argument to 0 */ 41 FT_LOCAL( void ) 42 otv_GDEF_validate( FT_Bytes table, 43 FT_Bytes gsub, 44 FT_Bytes gpos, 45 FT_UInt glyph_count, 46 FT_Validator valid ); 47 48 FT_LOCAL( void ) 49 otv_GPOS_validate( FT_Bytes table, 50 FT_UInt glyph_count, 51 FT_Validator valid ); 52 53 FT_LOCAL( void ) 54 otv_GSUB_validate( FT_Bytes table, 55 FT_UInt glyph_count, 56 FT_Validator valid ); 57 58 /* GSUB and GPOS tables should already be validated; */ 59 /* if missing, set corresponding argument to 0 */ 60 FT_LOCAL( void ) 61 otv_JSTF_validate( FT_Bytes table, 62 FT_Bytes gsub, 63 FT_Bytes gpos, 64 FT_UInt glyph_count, 65 FT_Validator valid ); 66 67 FT_LOCAL( void ) 68 otv_MATH_validate( FT_Bytes table, 69 FT_UInt glyph_count, 70 FT_Validator ftvalid ); 71 72 73 FT_END_HEADER 74 75 #endif /* OTVALID_H_ */ 76 77 78 /* END */ 79