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