24 #include FT_INTERNAL_DRIVER_H
25 #include FT_INTERNAL_TRUETYPE_TYPES_H
128 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
366 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
660 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
661 TT_Load_SFNT_HeaderRec_Func load_sfnt_header;
662 TT_Load_Directory_Func load_directory;
678 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
693 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
696 TT_Set_SBit_Strike_OldFunc set_sbit_strike_stub;
717 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
725 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
726 TT_CharMap_Load_Func load_charmap_stub;
727 TT_CharMap_Free_Func free_charmap_stub;
756 #ifndef FT_CONFIG_OPTION_PIC
758 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
759 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a) \
762 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a)
764 #define FT_INTERNAL(a) \
767 #define FT_DEFINE_SFNT_INTERFACE(class_, \
768 goto_table_, init_face_, load_face_, done_face_, get_interface_, \
769 load_any_, load_sfnt_header_, load_directory_, load_head_, \
770 load_hhea_, load_cmap_, load_maxp_, load_os2_, load_post_, \
771 load_name_, free_name_, load_hdmx_stub_, free_hdmx_stub_, \
772 load_kern_, load_gasp_, load_pclt_, load_bhed_, \
773 set_sbit_strike_stub_, load_sbits_stub_, find_sbit_image_, \
774 load_sbit_metrics_, load_sbit_image_, free_sbits_stub_, \
775 get_psname_, free_psnames_, load_charmap_stub_, free_charmap_stub_, \
776 get_kerning_, load_font_dir_, load_hmtx_, load_eblc_, free_eblc_, \
777 set_sbit_strike_, load_strike_metrics_, get_metrics_ ) \
778 static const SFNT_Interface class_ = \
780 FT_INTERNAL(goto_table_) \
781 FT_INTERNAL(init_face_) \
782 FT_INTERNAL(load_face_) \
783 FT_INTERNAL(done_face_) \
784 FT_INTERNAL(get_interface_) \
785 FT_INTERNAL(load_any_) \
786 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sfnt_header_) \
787 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_directory_) \
788 FT_INTERNAL(load_head_) \
789 FT_INTERNAL(load_hhea_) \
790 FT_INTERNAL(load_cmap_) \
791 FT_INTERNAL(load_maxp_) \
792 FT_INTERNAL(load_os2_) \
793 FT_INTERNAL(load_post_) \
794 FT_INTERNAL(load_name_) \
795 FT_INTERNAL(free_name_) \
796 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_hdmx_stub_) \
797 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_hdmx_stub_) \
798 FT_INTERNAL(load_kern_) \
799 FT_INTERNAL(load_gasp_) \
800 FT_INTERNAL(load_pclt_) \
801 FT_INTERNAL(load_bhed_) \
802 FT_DEFINE_DRIVERS_OLD_INTERNAL(set_sbit_strike_stub_) \
803 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbits_stub_) \
804 FT_DEFINE_DRIVERS_OLD_INTERNAL(find_sbit_image_) \
805 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbit_metrics_) \
806 FT_INTERNAL(load_sbit_image_) \
807 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_sbits_stub_) \
808 FT_INTERNAL(get_psname_) \
809 FT_INTERNAL(free_psnames_) \
810 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_charmap_stub_) \
811 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_charmap_stub_) \
812 FT_INTERNAL(get_kerning_) \
813 FT_INTERNAL(load_font_dir_) \
814 FT_INTERNAL(load_hmtx_) \
815 FT_INTERNAL(load_eblc_) \
816 FT_INTERNAL(free_eblc_) \
817 FT_INTERNAL(set_sbit_strike_) \
818 FT_INTERNAL(load_strike_metrics_) \
819 FT_INTERNAL(get_metrics_) \
824 #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
825 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a, a_) \
828 #define FT_DEFINE_DRIVERS_OLD_INTERNAL(a, a_)
830 #define FT_INTERNAL(a, a_) \
833 #define FT_DEFINE_SFNT_INTERFACE(class_, \
834 goto_table_, init_face_, load_face_, done_face_, get_interface_, \
835 load_any_, load_sfnt_header_, load_directory_, load_head_, \
836 load_hhea_, load_cmap_, load_maxp_, load_os2_, load_post_, \
837 load_name_, free_name_, load_hdmx_stub_, free_hdmx_stub_, \
838 load_kern_, load_gasp_, load_pclt_, load_bhed_, \
839 set_sbit_strike_stub_, load_sbits_stub_, find_sbit_image_, \
840 load_sbit_metrics_, load_sbit_image_, free_sbits_stub_, \
841 get_psname_, free_psnames_, load_charmap_stub_, free_charmap_stub_, \
842 get_kerning_, load_font_dir_, load_hmtx_, load_eblc_, free_eblc_, \
843 set_sbit_strike_, load_strike_metrics_, get_metrics_ ) \
845 FT_Init_Class_##class_( FT_Library library, SFNT_Interface* clazz ) \
847 FT_UNUSED(library); \
848 FT_INTERNAL(goto_table,goto_table_) \
849 FT_INTERNAL(init_face,init_face_) \
850 FT_INTERNAL(load_face,load_face_) \
851 FT_INTERNAL(done_face,done_face_) \
852 FT_INTERNAL(get_interface,get_interface_) \
853 FT_INTERNAL(load_any,load_any_) \
854 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sfnt_header,load_sfnt_header_) \
855 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_directory,load_directory_) \
856 FT_INTERNAL(load_head,load_head_) \
857 FT_INTERNAL(load_hhea,load_hhea_) \
858 FT_INTERNAL(load_cmap,load_cmap_) \
859 FT_INTERNAL(load_maxp,load_maxp_) \
860 FT_INTERNAL(load_os2,load_os2_) \
861 FT_INTERNAL(load_post,load_post_) \
862 FT_INTERNAL(load_name,load_name_) \
863 FT_INTERNAL(free_name,free_name_) \
864 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_hdmx_stub,load_hdmx_stub_) \
865 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_hdmx_stub,free_hdmx_stub_) \
866 FT_INTERNAL(load_kern,load_kern_) \
867 FT_INTERNAL(load_gasp,load_gasp_) \
868 FT_INTERNAL(load_pclt,load_pclt_) \
869 FT_INTERNAL(load_bhed,load_bhed_) \
870 FT_DEFINE_DRIVERS_OLD_INTERNAL(set_sbit_strike_stub,set_sbit_strike_stub_) \
871 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbits_stub,load_sbits_stub_) \
872 FT_DEFINE_DRIVERS_OLD_INTERNAL(find_sbit_image,find_sbit_image_) \
873 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_sbit_metrics,load_sbit_metrics_) \
874 FT_INTERNAL(load_sbit_image,load_sbit_image_) \
875 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_sbits_stub,free_sbits_stub_) \
876 FT_INTERNAL(get_psname,get_psname_) \
877 FT_INTERNAL(free_psnames,free_psnames_) \
878 FT_DEFINE_DRIVERS_OLD_INTERNAL(load_charmap_stub,load_charmap_stub_) \
879 FT_DEFINE_DRIVERS_OLD_INTERNAL(free_charmap_stub,free_charmap_stub_) \
880 FT_INTERNAL(get_kerning,get_kerning_) \
881 FT_INTERNAL(load_font_dir,load_font_dir_) \
882 FT_INTERNAL(load_hmtx,load_hmtx_) \
883 FT_INTERNAL(load_eblc,load_eblc_) \
884 FT_INTERNAL(free_eblc,free_eblc_) \
885 FT_INTERNAL(set_sbit_strike,set_sbit_strike_) \
886 FT_INTERNAL(load_strike_metrics,load_strike_metrics_) \
887 FT_INTERNAL(get_metrics,get_metrics_) \
FT_Error(* TT_Load_SBit_Image_Func)(TT_Face face, FT_ULong strike_index, FT_UInt glyph_index, FT_UInt load_flags, FT_Stream stream, FT_Bitmap *amap, TT_SBit_MetricsRec *ametrics)
TT_Init_Face_Func init_face
TT_Load_Strike_Metrics_Func load_strike_metrics
SFNT_Interface * SFNT_Service
GLvoid **typedef void(GLAPIENTRY *PFNGLGETVERTEXATTRIBDVPROC)(GLuint
TT_Load_Table_Func load_maxp
TT_Free_Table_Func free_psnames
FT_BEGIN_HEADER typedef FT_Error(* TT_Init_Face_Func)(FT_Stream stream, TT_Face face, FT_Int face_index, FT_Int num_params, FT_Parameter *params)
TT_Get_Metrics_Func get_metrics
FT_Error(* TT_Set_SBit_Strike_Func)(TT_Face face, FT_Size_Request req, FT_ULong *astrike_index)
TT_Load_Table_Func load_os2
FT_Module_Interface(* FT_Module_Requester)(FT_Module module, const char *name)
TT_Load_Table_Func load_head
GLuint GLsizei GLsizei GLfloat * metrics
FT_Error(* TT_Get_PS_Name_Func)(TT_Face face, FT_UInt idx, FT_String **PSname)
TT_Load_Table_Func load_pclt
FT_Error(* TT_Load_Metrics_Func)(TT_Face face, FT_Stream stream, FT_Bool vertical)
TT_Loader_GotoTableFunc goto_table
FT_BEGIN_HEADER typedef unsigned char FT_Bool
TT_Done_Face_Func done_face
TT_Load_SBit_Image_Func load_sbit_image
void(* TT_Done_Face_Func)(TT_Face face)
EGLContext EGLenum EGLClientBuffer buffer
FT_Error(* TT_Load_SBit_Metrics_Func)(FT_Stream stream, TT_SBit_Range range, TT_SBit_Metrics metrics)
TT_Load_Table_Func load_gasp
TT_Load_Metrics_Func load_hhea
TT_Set_SBit_Strike_Func set_sbit_strike
TT_Face_GetKerningFunc get_kerning
FT_Error(* TT_Load_Strike_Metrics_Func)(TT_Face face, FT_ULong strike_index, FT_Size_Metrics *metrics)
TT_Load_Table_Func load_post
TT_Load_Table_Func load_font_dir
TT_Load_Table_Func load_name
TT_Load_Face_Func load_face
TT_Load_Table_Func load_cmap
TT_Get_PS_Name_Func get_psname
TT_Load_Metrics_Func load_hmtx
TT_Free_Table_Func free_eblc
GLenum GLenum GLenum input
FT_Error(* TT_Find_SBit_Image_Func)(TT_Face face, FT_UInt glyph_index, FT_ULong strike_index, TT_SBit_Range *arange, TT_SBit_Strike *astrike, FT_ULong *aglyph_offset)
TT_Load_Table_Func load_bhed
void(* TT_Free_Table_Func)(TT_Face face)
FT_Error(* TT_Load_Any_Func)(TT_Face face, FT_ULong tag, FT_Long offset, FT_Byte *buffer, FT_ULong *length)
FT_Module_Requester get_interface
FT_Error(* TT_Load_Table_Func)(TT_Face face, FT_Stream stream)
TT_Load_Any_Func load_any
struct SFNT_Interface_ SFNT_Interface
TT_Load_Table_Func load_eblc
FT_Error(* TT_Loader_GotoTableFunc)(TT_Face face, FT_ULong tag, FT_Stream stream, FT_ULong *length)
FT_Error(* TT_Load_Face_Func)(FT_Stream stream, TT_Face face, FT_Int face_index, FT_Int num_params, FT_Parameter *params)
TT_Free_Table_Func free_name
FT_Int(* TT_Face_GetKerningFunc)(TT_Face face, FT_UInt left_glyph, FT_UInt right_glyph)
TT_Load_Table_Func load_kern
FT_Error(* TT_Get_Metrics_Func)(TT_Face face, FT_Bool vertical, FT_UInt gindex, FT_Short *abearing, FT_UShort *aadvance)