1 /***************************************************************************/ 2 /* */ 3 /* basepic.h */ 4 /* */ 5 /* The FreeType position independent code services for base. */ 6 /* */ 7 /* Copyright 2009 by */ 8 /* Oran Agra and Mickey Gabel. */ 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 __BASEPIC_H__ 20 #define __BASEPIC_H__ 21 22 23 FT_BEGIN_HEADER 24 25 #include FT_INTERNAL_PIC_H 26 27 #ifndef FT_CONFIG_OPTION_PIC 28 #define FT_OUTLINE_GLYPH_CLASS_GET &ft_outline_glyph_class 29 #define FT_BITMAP_GLYPH_CLASS_GET &ft_bitmap_glyph_class 30 #define FT_DEFAULT_MODULES_GET ft_default_modules 31 32 #else /* FT_CONFIG_OPTION_PIC */ 33 34 #include FT_GLYPH_H 35 36 typedef struct BasePIC_ 37 { 38 FT_Module_Class** default_module_classes; 39 FT_Glyph_Class ft_outline_glyph_class; 40 FT_Glyph_Class ft_bitmap_glyph_class; 41 } BasePIC; 42 43 #define GET_PIC(lib) ((BasePIC*)((lib)->pic_container.base)) 44 #define FT_OUTLINE_GLYPH_CLASS_GET (&GET_PIC(library)->ft_outline_glyph_class) 45 #define FT_BITMAP_GLYPH_CLASS_GET (&GET_PIC(library)->ft_bitmap_glyph_class) 46 #define FT_DEFAULT_MODULES_GET (GET_PIC(library)->default_module_classes) 47 48 void 49 ft_base_pic_free( FT_Library library ); 50 51 FT_Error 52 ft_base_pic_init( FT_Library library ); 53 54 #endif /* FT_CONFIG_OPTION_PIC */ 55 /* */ 56 57 FT_END_HEADER 58 59 #endif /* __BASEPIC_H__ */ 60 61 62 /* END */ 63