Merge branch 'const_class' into 'master'

Draft: [base] Make FT_Module_Class always const.

See merge request freetype/freetype!393
This commit is contained in:
Alexei Podtelezhnikov 2025-10-28 17:54:53 -04:00
commit 4f2f58b973
71 changed files with 297 additions and 575 deletions

View file

@ -84,35 +84,35 @@ FT_USE_MODULE( FT_Module_Class, autofit_module_class )
#endif
#ifdef FT_USE_TT
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
FT_USE_MODULE( FT_Driver_Class, tt_driver_class )
#endif
#ifdef FT_USE_T1
FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
FT_USE_MODULE( FT_Driver_Class, t1_driver_class )
#endif
#ifdef FT_USE_CFF
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
FT_USE_MODULE( FT_Driver_Class, cff_driver_class )
#endif
#ifdef FT_USE_T1CID
FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
FT_USE_MODULE( FT_Driver_Class, t1cid_driver_class )
#endif
#ifdef FT_USE_PFR
FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
FT_USE_MODULE( FT_Driver_Class, pfr_driver_class )
#endif
#ifdef FT_USE_T42
FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
FT_USE_MODULE( FT_Driver_Class, t42_driver_class )
#endif
#ifdef FT_USE_WINFNT
FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
FT_USE_MODULE( FT_Driver_Class, winfnt_driver_class )
#endif
#ifdef FT_USE_PCF
FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
FT_USE_MODULE( FT_Driver_Class, pcf_driver_class )
#endif
#ifdef FT_USE_PSAUX
@ -144,7 +144,7 @@ FT_USE_MODULE( FT_Module_Class, otv_module_class )
#endif
#ifdef FT_USE_BDF
FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
FT_USE_MODULE( FT_Driver_Class, bdf_driver_class )
#endif
#ifdef FT_USE_GXV

View file

@ -75,7 +75,7 @@ def generate_ftmodule(lists):
"winfonts": "winfnt",
}.get(driver, driver)
result += (
"FT_USE_MODULE( FT_Driver_ClassRec, %s_driver_class )\n" % name
"FT_USE_MODULE( FT_Driver_Class, %s_driver_class )\n" % name
)
for module in lists["HINTING_MODULES"]:

View file

@ -11,15 +11,15 @@
*/
FT_USE_MODULE( FT_Module_Class, autofit_module_class )
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
FT_USE_MODULE( FT_Driver_Class, tt_driver_class )
FT_USE_MODULE( FT_Driver_Class, t1_driver_class )
FT_USE_MODULE( FT_Driver_Class, cff_driver_class )
FT_USE_MODULE( FT_Driver_Class, t1cid_driver_class )
FT_USE_MODULE( FT_Driver_Class, pfr_driver_class )
FT_USE_MODULE( FT_Driver_Class, t42_driver_class )
FT_USE_MODULE( FT_Driver_Class, winfnt_driver_class )
FT_USE_MODULE( FT_Driver_Class, pcf_driver_class )
FT_USE_MODULE( FT_Driver_Class, bdf_driver_class )
FT_USE_MODULE( FT_Module_Class, psaux_module_class )
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )

View file

@ -66,7 +66,7 @@ FT_BEGIN_HEADER
/* forward declaration to a private type */
typedef struct FT_Glyph_Class_ FT_Glyph_Class;
typedef const struct FT_Glyph_Class_ FT_Glyph_Class;
/**************************************************************************
@ -111,10 +111,10 @@ FT_BEGIN_HEADER
*/
typedef struct FT_GlyphRec_
{
FT_Library library;
const FT_Glyph_Class* clazz;
FT_Glyph_Format format;
FT_Vector advance;
FT_Library library;
FT_Glyph_Class* clazz;
FT_Glyph_Format format;
FT_Vector advance;
} FT_GlyphRec;

View file

@ -232,7 +232,7 @@ FT_BEGIN_HEADER
* get_interface ::
* The interface requesting function.
*/
typedef struct FT_Module_Class_
typedef const struct FT_Module_Class_
{
FT_ULong module_flags;
FT_Long module_size;
@ -273,8 +273,8 @@ FT_BEGIN_HEADER
* if the module requires a version of FreeType that is too great.
*/
FT_EXPORT( FT_Error )
FT_Add_Module( FT_Library library,
const FT_Module_Class* clazz );
FT_Add_Module( FT_Library library,
FT_Module_Class* clazz );
/**************************************************************************

View file

@ -147,7 +147,7 @@ FT_BEGIN_HEADER
* For @FT_GLYPH_FORMAT_OUTLINE renderers only. This is a pointer to
* its raster's class.
*/
typedef struct FT_Renderer_Class_
typedef const struct FT_Renderer_Class_
{
FT_Module_Class root;

View file

@ -90,7 +90,7 @@ FT_BEGIN_HEADER
/**************************************************************************
*
* @struct:
* FT_Driver_ClassRec
* FT_Driver_Class
*
* @description:
* The font driver class. This structure mostly contains pointers to
@ -162,7 +162,7 @@ FT_BEGIN_HEADER
* Most function pointers, with the exception of `load_glyph`, can be set
* to 0 to indicate a default behaviour.
*/
typedef struct FT_Driver_ClassRec_
typedef const struct FT_Driver_Class_
{
FT_Module_Class root;
@ -189,96 +189,7 @@ FT_BEGIN_HEADER
FT_Size_RequestFunc request_size;
FT_Size_SelectFunc select_size;
} FT_Driver_ClassRec, *FT_Driver_Class;
/**************************************************************************
*
* @macro:
* FT_DECLARE_DRIVER
*
* @description:
* Used to create a forward declaration of an FT_Driver_ClassRec struct
* instance.
*
* @macro:
* FT_DEFINE_DRIVER
*
* @description:
* Used to initialize an instance of FT_Driver_ClassRec struct.
*
* `ftinit.c` (ft_create_default_module_classes) already contains a
* mechanism to call these functions for the default modules described in
* `ftmodule.h`.
*
* The struct will be allocated in the global scope (or the scope where
* the macro is used).
*/
#define FT_DECLARE_DRIVER( class_ ) \
FT_CALLBACK_TABLE \
const FT_Driver_ClassRec class_;
#define FT_DEFINE_DRIVER( \
class_, \
flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_, \
face_object_size_, \
size_object_size_, \
slot_object_size_, \
init_face_, \
done_face_, \
init_size_, \
done_size_, \
init_slot_, \
done_slot_, \
load_glyph_, \
get_kerning_, \
attach_file_, \
get_advances_, \
request_size_, \
select_size_ ) \
FT_CALLBACK_TABLE_DEF \
const FT_Driver_ClassRec class_ = \
{ \
FT_DEFINE_ROOT_MODULE( flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_ ) \
\
face_object_size_, \
size_object_size_, \
slot_object_size_, \
\
init_face_, \
done_face_, \
\
init_size_, \
done_size_, \
\
init_slot_, \
done_slot_, \
\
load_glyph_, \
\
get_kerning_, \
attach_file_, \
get_advances_, \
\
request_size_, \
select_size_ \
};
} FT_Driver_Class, FT_Driver_ClassRec;
FT_END_HEADER

View file

@ -205,7 +205,7 @@ FT_BEGIN_HEADER
FT_UInt32 variant_selector );
typedef struct FT_CMap_ClassRec_
typedef const struct FT_CMap_ClassRec_
{
FT_ULong size;
@ -226,37 +226,6 @@ FT_BEGIN_HEADER
} FT_CMap_ClassRec;
#define FT_DECLARE_CMAP_CLASS( class_ ) \
FT_CALLBACK_TABLE const FT_CMap_ClassRec class_;
#define FT_DEFINE_CMAP_CLASS( \
class_, \
size_, \
init_, \
done_, \
char_index_, \
char_next_, \
char_var_index_, \
char_var_default_, \
variant_list_, \
charvariant_list_, \
variantchar_list_ ) \
FT_CALLBACK_TABLE_DEF \
const FT_CMap_ClassRec class_ = \
{ \
size_, \
init_, \
done_, \
char_index_, \
char_next_, \
char_var_index_, \
char_var_default_, \
variant_list_, \
charvariant_list_, \
variantchar_list_ \
};
/* create a new charmap and add it to charmap->face */
FT_BASE( FT_Error )
FT_CMap_New( FT_CMap_Class clazz,
@ -520,9 +489,9 @@ FT_BEGIN_HEADER
*/
typedef struct FT_ModuleRec_
{
const FT_Module_Class* clazz;
FT_Library library;
FT_Memory memory;
FT_Module_Class* clazz;
FT_Library library;
FT_Memory memory;
} FT_ModuleRec;
@ -815,10 +784,10 @@ FT_BEGIN_HEADER
*/
typedef struct FT_DriverRec_
{
FT_ModuleRec root;
FT_Driver_Class clazz;
FT_ListRec faces_list;
FT_GlyphLoader glyph_loader;
FT_ModuleRec root;
FT_Driver_Class* clazz;
FT_ListRec faces_list;
FT_GlyphLoader glyph_loader;
} FT_DriverRec;
@ -1053,188 +1022,6 @@ FT_BEGIN_HEADER
};
/**************************************************************************
*
* @macro:
* FT_DEFINE_GLYPH
*
* @description:
* The struct will be allocated in the global scope (or the scope where
* the macro is used).
*/
#define FT_DECLARE_GLYPH( class_ ) \
FT_CALLBACK_TABLE const FT_Glyph_Class class_;
#define FT_DEFINE_GLYPH( \
class_, \
size_, \
format_, \
init_, \
done_, \
copy_, \
transform_, \
bbox_, \
prepare_ ) \
FT_CALLBACK_TABLE_DEF \
const FT_Glyph_Class class_ = \
{ \
size_, \
format_, \
init_, \
done_, \
copy_, \
transform_, \
bbox_, \
prepare_ \
};
/**************************************************************************
*
* @macro:
* FT_DECLARE_RENDERER
*
* @description:
* Used to create a forward declaration of a FT_Renderer_Class struct
* instance.
*
* @macro:
* FT_DEFINE_RENDERER
*
* @description:
* Used to initialize an instance of FT_Renderer_Class struct.
*
* The struct will be allocated in the global scope (or the scope where
* the macro is used).
*/
#define FT_DECLARE_RENDERER( class_ ) \
FT_EXPORT_VAR( const FT_Renderer_Class ) class_;
#define FT_DEFINE_RENDERER( \
class_, \
flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_, \
glyph_format_, \
render_glyph_, \
transform_glyph_, \
get_glyph_cbox_, \
set_mode_, \
raster_class_ ) \
FT_CALLBACK_TABLE_DEF \
const FT_Renderer_Class class_ = \
{ \
FT_DEFINE_ROOT_MODULE( flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_ ) \
glyph_format_, \
\
render_glyph_, \
transform_glyph_, \
get_glyph_cbox_, \
set_mode_, \
\
raster_class_ \
};
/**************************************************************************
*
* @macro:
* FT_DECLARE_MODULE
*
* @description:
* Used to create a forward declaration of a FT_Module_Class struct
* instance.
*
* @macro:
* FT_DEFINE_MODULE
*
* @description:
* Used to initialize an instance of an FT_Module_Class struct.
*
* The struct will be allocated in the global scope (or the scope where
* the macro is used).
*
* @macro:
* FT_DEFINE_ROOT_MODULE
*
* @description:
* Used to initialize an instance of an FT_Module_Class struct inside
* another struct that contains it or in a function that initializes that
* containing struct.
*/
#define FT_DECLARE_MODULE( class_ ) \
FT_CALLBACK_TABLE \
const FT_Module_Class class_;
#define FT_DEFINE_ROOT_MODULE( \
flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_ ) \
{ \
flags_, \
size_, \
\
name_, \
version_, \
requires_, \
\
interface_, \
\
init_, \
done_, \
get_interface_, \
},
#define FT_DEFINE_MODULE( \
class_, \
flags_, \
size_, \
name_, \
version_, \
requires_, \
interface_, \
init_, \
done_, \
get_interface_ ) \
FT_CALLBACK_TABLE_DEF \
const FT_Module_Class class_ = \
{ \
flags_, \
size_, \
\
name_, \
version_, \
requires_, \
\
interface_, \
\
init_, \
done_, \
get_interface_, \
};
FT_END_HEADER
#endif /* FTOBJS_H_ */

View file

@ -516,9 +516,10 @@
af_autofitter_load_glyph /* FT_AutoHinter_GlyphLoadFunc load_glyph */
)
FT_DEFINE_MODULE(
autofit_module_class,
FT_CALLBACK_TABLE_DEF
FT_Module_Class autofit_module_class =
{
FT_MODULE_HINTER,
sizeof ( AF_ModuleRec ),
@ -531,7 +532,7 @@
af_autofitter_init, /* FT_Module_Constructor module_init */
af_autofitter_done, /* FT_Module_Destructor module_done */
af_get_interface /* FT_Module_Requester get_interface */
)
};
/* END */

View file

@ -50,7 +50,10 @@ FT_BEGIN_HEADER
FT_DECLARE_AUTOHINTER_INTERFACE( af_autofitter_interface )
FT_DECLARE_MODULE( autofit_module_class )
FT_CALLBACK_TABLE
FT_Module_Class autofit_module_class;
FT_END_HEADER

View file

@ -26,9 +26,10 @@
FT_BEGIN_HEADER
FT_DECLARE_GLYPH( ft_bitmap_glyph_class )
FT_DECLARE_GLYPH( ft_outline_glyph_class )
FT_DECLARE_GLYPH( ft_svg_glyph_class )
FT_CALLBACK_TABLE
FT_Glyph_Class ft_bitmap_glyph_class,
ft_outline_glyph_class,
ft_svg_glyph_class;
#ifdef FT_CONFIG_OPTION_MAC_FONTS

View file

@ -133,9 +133,9 @@
}
FT_DEFINE_GLYPH(
ft_bitmap_glyph_class,
FT_CALLBACK_TABLE_DEF
FT_Glyph_Class ft_bitmap_glyph_class =
{
sizeof ( FT_BitmapGlyphRec ),
FT_GLYPH_FORMAT_BITMAP,
@ -145,7 +145,7 @@
NULL, /* FT_Glyph_TransformFunc glyph_transform */
ft_bitmap_glyph_bbox, /* FT_Glyph_GetBBoxFunc glyph_bbox */
NULL /* FT_Glyph_PrepareFunc glyph_prepare */
)
};
/*************************************************************************/
@ -263,9 +263,9 @@
}
FT_DEFINE_GLYPH(
ft_outline_glyph_class,
FT_CALLBACK_TABLE_DEF
FT_Glyph_Class ft_outline_glyph_class =
{
sizeof ( FT_OutlineGlyphRec ),
FT_GLYPH_FORMAT_OUTLINE,
@ -275,7 +275,7 @@
ft_outline_glyph_transform, /* FT_Glyph_TransformFunc glyph_transform */
ft_outline_glyph_bbox, /* FT_Glyph_GetBBoxFunc glyph_bbox */
ft_outline_glyph_prepare /* FT_Glyph_PrepareFunc glyph_prepare */
)
};
#ifdef FT_CONFIG_OPTION_SVG
@ -495,9 +495,9 @@
}
FT_DEFINE_GLYPH(
ft_svg_glyph_class,
FT_CALLBACK_TABLE_DEF
FT_Glyph_Class ft_svg_glyph_class =
{
sizeof ( FT_SvgGlyphRec ),
FT_GLYPH_FORMAT_SVG,
@ -507,7 +507,7 @@
ft_svg_glyph_transform, /* FT_Glyph_TransformFunc glyph_transform */
NULL, /* FT_Glyph_GetBBoxFunc glyph_bbox */
ft_svg_glyph_prepare /* FT_Glyph_PrepareFunc glyph_prepare */
)
};
#endif /* FT_CONFIG_OPTION_SVG */
@ -521,9 +521,9 @@
/*************************************************************************/
static FT_Error
ft_new_glyph( FT_Library library,
const FT_Glyph_Class* clazz,
FT_Glyph* aglyph )
ft_new_glyph( FT_Library library,
FT_Glyph_Class* clazz,
FT_Glyph* aglyph )
{
FT_Memory memory = library->memory;
FT_Error error;
@ -551,9 +551,9 @@
FT_Glyph_Copy( FT_Glyph source,
FT_Glyph *target )
{
FT_Glyph copy;
FT_Error error;
const FT_Glyph_Class* clazz;
FT_Glyph copy;
FT_Error error;
FT_Glyph_Class* clazz;
/* check arguments */
@ -599,7 +599,7 @@
FT_Glyph_Format format,
FT_Glyph *aglyph )
{
const FT_Glyph_Class* clazz = NULL;
FT_Glyph_Class* clazz = NULL;
if ( !library || !aglyph )
return FT_THROW( Invalid_Argument );
@ -708,7 +708,7 @@
error = FT_THROW( Invalid_Argument );
else
{
const FT_Glyph_Class* clazz = glyph->clazz;
FT_Glyph_Class* clazz = glyph->clazz;
if ( clazz->glyph_transform )
@ -734,7 +734,7 @@
FT_UInt bbox_mode,
FT_BBox *acbox )
{
const FT_Glyph_Class* clazz;
FT_Glyph_Class* clazz;
if ( !acbox )
@ -787,7 +787,7 @@
FT_Error error = FT_Err_Ok;
FT_Glyph b, glyph;
FT_BitmapGlyph bitmap = NULL;
const FT_Glyph_Class* clazz;
FT_Glyph_Class* clazz;
FT_Library library;
@ -896,8 +896,8 @@
{
if ( glyph )
{
FT_Memory memory = glyph->library->memory;
const FT_Glyph_Class* clazz = glyph->clazz;
FT_Memory memory = glyph->library->memory;
FT_Glyph_Class* clazz = glyph->clazz;
if ( clazz->glyph_done )

View file

@ -56,18 +56,18 @@
#undef FT_USE_MODULE
#ifdef __cplusplus
#define FT_USE_MODULE( type, x ) extern "C" const type x;
#define FT_USE_MODULE( type, x ) extern "C" type x;
#else
#define FT_USE_MODULE( type, x ) extern const type x;
#define FT_USE_MODULE( type, x ) extern type x;
#endif
#include FT_CONFIG_MODULES_H
#undef FT_USE_MODULE
#define FT_USE_MODULE( type, x ) (const FT_Module_Class*)&(x),
#define FT_USE_MODULE( type, x ) (FT_Module_Class*)&(x),
static
const FT_Module_Class* const ft_default_modules[] =
FT_Module_Class* const ft_default_modules[] =
{
#include FT_CONFIG_MODULES_H
0
@ -80,13 +80,13 @@
FT_Add_Default_Modules( FT_Library library )
{
FT_Error error;
const FT_Module_Class* const* cur;
FT_Module_Class* const* cur;
/* GCC 4.6 warns the type difference:
* FT_Module_Class** != const FT_Module_Class* const*
* FT_Module_Class** != FT_Module_Class* const*
*/
cur = (const FT_Module_Class* const*)ft_default_modules;
cur = (FT_Module_Class* const*)ft_default_modules;
/* test for valid `library' delayed to FT_Add_Module() */
while ( *cur )

View file

@ -311,7 +311,7 @@
ft_glyphslot_init( FT_GlyphSlot slot )
{
FT_Driver driver = slot->face->driver;
FT_Driver_Class clazz = driver->clazz;
FT_Driver_Class* clazz = driver->clazz;
FT_Memory memory = driver->root.memory;
FT_Error error = FT_Err_Ok;
FT_Slot_Internal internal = NULL;
@ -624,9 +624,9 @@
static void
ft_glyphslot_done( FT_GlyphSlot slot )
{
FT_Driver driver = slot->face->driver;
FT_Driver_Class clazz = driver->clazz;
FT_Memory memory = driver->root.memory;
FT_Driver driver = slot->face->driver;
FT_Driver_Class* clazz = driver->clazz;
FT_Memory memory = driver->root.memory;
#ifdef FT_CONFIG_OPTION_SVG
if ( slot->face->face_flags & FT_FACE_FLAG_SVG )
@ -674,11 +674,11 @@
FT_New_GlyphSlot( FT_Face face,
FT_GlyphSlot *aslot )
{
FT_Error error;
FT_Driver driver;
FT_Driver_Class clazz;
FT_Memory memory;
FT_GlyphSlot slot = NULL;
FT_Error error;
FT_Driver driver;
FT_Driver_Class* clazz;
FT_Memory memory;
FT_GlyphSlot slot = NULL;
if ( !face )
@ -1299,9 +1299,9 @@
void* face_,
void* driver_ )
{
FT_Face face = (FT_Face)face_;
FT_Driver driver = (FT_Driver)driver_;
FT_Driver_Class clazz = driver->clazz;
FT_Face face = (FT_Face)face_;
FT_Driver driver = (FT_Driver)driver_;
FT_Driver_Class* clazz = driver->clazz;
/* discard auto-hinting data */
@ -1495,7 +1495,7 @@
FT_Face *aface )
{
FT_Memory memory;
FT_Driver_Class clazz;
FT_Driver_Class* clazz;
FT_Face face = NULL;
FT_Face_Internal internal = NULL;
@ -2870,7 +2870,7 @@
FT_Error error;
FT_Driver driver;
FT_Driver_Class clazz;
FT_Driver_Class* clazz;
/* test for valid `parameters' delayed to `FT_Stream_New' */
@ -2965,13 +2965,13 @@
FT_New_Size( FT_Face face,
FT_Size *asize )
{
FT_Error error;
FT_Memory memory;
FT_Driver driver;
FT_Driver_Class clazz;
FT_Error error;
FT_Memory memory;
FT_Driver driver;
FT_Driver_Class* clazz;
FT_Size size = NULL;
FT_ListNode node = NULL;
FT_Size size = NULL;
FT_ListNode node = NULL;
FT_Size_Internal internal = NULL;
@ -3373,8 +3373,8 @@
FT_Select_Size( FT_Face face,
FT_Int strike_index )
{
FT_Error error = FT_Err_Ok;
FT_Driver_Class clazz;
FT_Error error = FT_Err_Ok;
FT_Driver_Class* clazz;
if ( !face || !FT_HAS_FIXED_SIZES( face ) )
@ -3431,9 +3431,9 @@
FT_Request_Size( FT_Face face,
FT_Size_Request req )
{
FT_Error error;
FT_Driver_Class clazz;
FT_ULong strike_index;
FT_Error error;
FT_Driver_Class* clazz;
FT_ULong strike_index;
if ( !face )
@ -5030,9 +5030,9 @@
static void
Destroy_Module( FT_Module module )
{
const FT_Module_Class* clazz = module->clazz;
FT_Library library = module->library;
FT_Memory memory = module->memory;
FT_Module_Class* clazz = module->clazz;
FT_Library library = module->library;
FT_Memory memory = module->memory;
if ( library && library->auto_hinter == module )
@ -5058,8 +5058,8 @@
/* documentation is in ftmodapi.h */
FT_EXPORT_DEF( FT_Error )
FT_Add_Module( FT_Library library,
const FT_Module_Class* clazz )
FT_Add_Module( FT_Library library,
FT_Module_Class* clazz )
{
FT_Error error;
FT_Memory memory;
@ -5135,7 +5135,7 @@
FT_Driver driver = FT_DRIVER( module );
driver->clazz = (FT_Driver_Class)module->clazz;
driver->clazz = (FT_Driver_Class*)module->clazz;
}
if ( clazz->module_init )

View file

@ -26,7 +26,8 @@
/* declare an extern to access `ft_outline_glyph_class' globally */
/* allocated in `ftglyph.c' */
FT_CALLBACK_TABLE const FT_Glyph_Class ft_outline_glyph_class;
FT_CALLBACK_TABLE
FT_Glyph_Class ft_outline_glyph_class;
/* documentation is in ftstroke.h */

View file

@ -187,7 +187,7 @@ THE SOFTWARE.
static
const FT_CMap_ClassRec bdf_cmap_class =
FT_CMap_ClassRec bdf_cmap_class =
{
sizeof ( BDF_CMapRec ),
bdf_cmap_init,
@ -984,7 +984,7 @@ THE SOFTWARE.
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec bdf_driver_class =
FT_Driver_Class bdf_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -60,7 +60,7 @@ FT_BEGIN_HEADER
} BDF_FaceRec, *BDF_Face;
FT_EXPORT_VAR( const FT_Driver_ClassRec ) bdf_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) bdf_driver_class;
FT_END_HEADER

View file

@ -27,7 +27,7 @@
FTMODULE_H_COMMANDS += BDF_DRIVER
define BDF_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, bdf_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, bdf_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)bdf $(ECHO_DRIVER_DESC)bdf bitmap fonts$(ECHO_DRIVER_DONE)
endef

View file

@ -97,9 +97,9 @@
}
FT_DEFINE_CMAP_CLASS(
cff_cmap_encoding_class_rec,
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec cff_cmap_encoding_class_rec =
{
sizeof ( CFF_CMapStdRec ),
(FT_CMap_InitFunc) cff_cmap_encoding_init, /* init */
@ -112,7 +112,7 @@
(FT_CMap_VariantListFunc) NULL, /* variant_list */
(FT_CMap_CharVariantListFunc) NULL, /* charvariant_list */
(FT_CMap_VariantCharListFunc) NULL /* variantchar_list */
)
};
/*************************************************************************/
@ -209,9 +209,9 @@
}
FT_DEFINE_CMAP_CLASS(
cff_cmap_unicode_class_rec,
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec cff_cmap_unicode_class_rec =
{
sizeof ( PS_UnicodesRec ),
(FT_CMap_InitFunc) cff_cmap_unicode_init, /* init */
@ -224,7 +224,7 @@
(FT_CMap_VariantListFunc) NULL, /* variant_list */
(FT_CMap_CharVariantListFunc) NULL, /* charvariant_list */
(FT_CMap_VariantCharListFunc) NULL /* variantchar_list */
)
};
/* END */

View file

@ -43,7 +43,8 @@ FT_BEGIN_HEADER
} CFF_CMapStdRec;
FT_DECLARE_CMAP_CLASS( cff_cmap_encoding_class_rec )
FT_CALLBACK_TABLE
FT_CMap_ClassRec cff_cmap_encoding_class_rec;
/*************************************************************************/
@ -56,7 +57,8 @@ FT_BEGIN_HEADER
/* unicode (synthetic) cmaps */
FT_DECLARE_CMAP_CLASS( cff_cmap_unicode_class_rec )
FT_CALLBACK_TABLE
FT_CMap_ClassRec cff_cmap_unicode_class_rec;
FT_END_HEADER

View file

@ -1179,9 +1179,10 @@
#define CFF_SIZE_SELECT 0
#endif
FT_DEFINE_DRIVER(
cff_driver_class,
FT_CALLBACK_TABLE_DEF
FT_Driver_Class cff_driver_class =
{
{
FT_MODULE_FONT_DRIVER |
FT_MODULE_DRIVER_SCALABLE |
FT_MODULE_DRIVER_HAS_HINTER |
@ -1196,7 +1197,8 @@
cff_driver_init, /* FT_Module_Constructor module_init */
cff_driver_done, /* FT_Module_Destructor module_done */
cff_get_interface, /* FT_Module_Requester get_interface */
cff_get_interface /* FT_Module_Requester get_interface */
},
sizeof ( TT_FaceRec ),
sizeof ( CFF_SizeRec ),
@ -1217,7 +1219,7 @@
cff_size_request, /* FT_Size_RequestFunc request_size */
CFF_SIZE_SELECT /* FT_Size_SelectFunc select_size */
)
};
/* END */

View file

@ -25,7 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_DRIVER( cff_driver_class )
FT_CALLBACK_TABLE
FT_Driver_Class cff_driver_class;
FT_END_HEADER

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += CFF_DRIVER
define CFF_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, cff_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, cff_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)cff $(ECHO_DRIVER_DESC)OpenType fonts with extension *.otf$(ECHO_DRIVER_DONE)
endef

View file

@ -230,7 +230,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec t1cid_driver_class =
FT_Driver_Class t1cid_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -26,7 +26,7 @@
FT_BEGIN_HEADER
FT_CALLBACK_TABLE
const FT_Driver_ClassRec t1cid_driver_class;
FT_Driver_Class t1cid_driver_class;
FT_END_HEADER

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += TYPE1CID_DRIVER
define TYPE1CID_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, t1cid_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, t1cid_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)cid $(ECHO_DRIVER_DESC)Postscript CID-keyed fonts, no known extension$(ECHO_DRIVER_DONE)
endef

View file

@ -269,7 +269,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Module_Class gxv_module_class =
FT_Module_Class gxv_module_class =
{
0,
sizeof ( FT_ModuleRec ),

View file

@ -35,7 +35,7 @@
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Module_Class ) gxv_module_class;
FT_EXPORT_VAR( FT_Module_Class ) gxv_module_class;
FT_END_HEADER

View file

@ -262,7 +262,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Module_Class otv_module_class =
FT_Module_Class otv_module_class =
{
0,
sizeof ( FT_ModuleRec ),

View file

@ -27,7 +27,7 @@
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Module_Class ) otv_module_class;
FT_EXPORT_VAR( FT_Module_Class ) otv_module_class;
FT_END_HEADER

View file

@ -27,7 +27,7 @@
FTMODULE_H_COMMANDS += PCF_DRIVER
define PCF_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, pcf_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, pcf_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)pcf $(ECHO_DRIVER_DESC)pcf bitmap fonts$(ECHO_DRIVER_DONE)
endef

View file

@ -157,7 +157,7 @@ THE SOFTWARE.
static
const FT_CMap_ClassRec pcf_cmap_class =
FT_CMap_ClassRec pcf_cmap_class =
{
sizeof ( PCF_CMapRec ),
pcf_cmap_init,
@ -793,7 +793,7 @@ THE SOFTWARE.
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec pcf_driver_class =
FT_Driver_Class pcf_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -33,7 +33,7 @@ THE SOFTWARE.
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Driver_ClassRec ) pcf_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) pcf_driver_class;
FT_END_HEADER

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += PFR_DRIVER
define PFR_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, pfr_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, pfr_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)pfr $(ECHO_DRIVER_DESC)PFR/TrueDoc font files with extension *.pfr$(ECHO_DRIVER_DONE)
endef

View file

@ -167,8 +167,8 @@
}
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec
pfr_cmap_class_rec =
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec pfr_cmap_class_rec =
{
sizeof ( PFR_CMapRec ),

View file

@ -34,7 +34,8 @@ FT_BEGIN_HEADER
} PFR_CMapRec, *PFR_CMap;
FT_CALLBACK_TABLE const FT_CMap_ClassRec pfr_cmap_class_rec;
FT_CALLBACK_TABLE
FT_CMap_ClassRec pfr_cmap_class_rec;
FT_END_HEADER

View file

@ -168,7 +168,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec pfr_driver_class =
FT_Driver_Class pfr_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -25,7 +25,7 @@
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Driver_ClassRec ) pfr_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) pfr_driver_class;
FT_END_HEADER

View file

@ -170,9 +170,9 @@
};
FT_DEFINE_MODULE(
psaux_module_class,
FT_CALLBACK_TABLE_DEF
FT_Module_Class psaux_module_class =
{
0,
sizeof ( FT_ModuleRec ),
"psaux",
@ -184,7 +184,7 @@
(FT_Module_Constructor)NULL, /* module_init */
(FT_Module_Destructor) NULL, /* module_done */
(FT_Module_Requester) NULL /* get_interface */
)
};
/* END */

View file

@ -45,8 +45,8 @@ FT_BEGIN_HEADER
FT_CALLBACK_TABLE
const CFF_Decoder_FuncsRec cff_decoder_funcs;
FT_DECLARE_MODULE( psaux_module_class )
FT_CALLBACK_TABLE
FT_Module_Class psaux_module_class;
FT_END_HEADER

View file

@ -136,8 +136,8 @@
}
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec
t1_cmap_standard_class_rec =
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec t1_cmap_standard_class_rec =
{
sizeof ( T1_CMapStdRec ),
@ -166,8 +166,8 @@
return 0;
}
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec
t1_cmap_expert_class_rec =
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec t1_cmap_expert_class_rec =
{
sizeof ( T1_CMapStdRec ),
@ -272,8 +272,8 @@
}
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec
t1_cmap_custom_class_rec =
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec t1_cmap_custom_class_rec =
{
sizeof ( T1_CMapCustomRec ),
@ -372,8 +372,8 @@
}
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec
t1_cmap_unicode_class_rec =
FT_CALLBACK_TABLE_DEF
FT_CMap_ClassRec t1_cmap_unicode_class_rec =
{
sizeof ( PS_UnicodesRec ),

View file

@ -49,11 +49,11 @@ FT_BEGIN_HEADER
} T1_CMapStdRec;
FT_CALLBACK_TABLE const FT_CMap_ClassRec
t1_cmap_standard_class_rec;
FT_CALLBACK_TABLE
FT_CMap_ClassRec t1_cmap_standard_class_rec;
FT_CALLBACK_TABLE const FT_CMap_ClassRec
t1_cmap_expert_class_rec;
FT_CALLBACK_TABLE
FT_CMap_ClassRec t1_cmap_expert_class_rec;
/*************************************************************************/
@ -76,8 +76,8 @@ FT_BEGIN_HEADER
} T1_CMapCustomRec;
FT_CALLBACK_TABLE const FT_CMap_ClassRec
t1_cmap_custom_class_rec;
FT_CALLBACK_TABLE
FT_CMap_ClassRec t1_cmap_custom_class_rec;
/*************************************************************************/
@ -90,8 +90,8 @@ FT_BEGIN_HEADER
/* unicode (synthetic) cmaps */
FT_CALLBACK_TABLE const FT_CMap_ClassRec
t1_cmap_unicode_class_rec;
FT_CALLBACK_TABLE
FT_CMap_ClassRec t1_cmap_unicode_class_rec;
/* */

View file

@ -106,9 +106,9 @@
)
FT_DEFINE_MODULE(
pshinter_module_class,
FT_CALLBACK_TABLE_DEF
FT_Module_Class pshinter_module_class =
{
0,
sizeof ( PS_Hinter_ModuleRec ),
"pshinter",
@ -120,6 +120,6 @@
(FT_Module_Constructor)ps_hinter_init, /* module_init */
(FT_Module_Destructor) ps_hinter_done, /* module_done */
(FT_Module_Requester) NULL /* get_interface */
)
};
/* END */

View file

@ -25,9 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_MODULE( pshinter_module_class )
FT_CALLBACK_TABLE
FT_Module_Class pshinter_module_class;
FT_END_HEADER

View file

@ -599,9 +599,9 @@
#define PUT_PS_NAMES_SERVICE( a ) a
#endif
FT_DEFINE_MODULE(
psnames_module_class,
FT_CALLBACK_TABLE_DEF
FT_Module_Class psnames_module_class =
{
0, /* this is not a font driver, nor a renderer */
sizeof ( FT_ModuleRec ),
@ -615,7 +615,7 @@
NULL, /* FT_Module_Constructor module_init */
NULL, /* FT_Module_Destructor module_done */
PUT_PS_NAMES_SERVICE( psnames_get_service ) /* FT_Module_Requester get_interface */
)
};
/* END */

View file

@ -25,9 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_MODULE( psnames_module_class )
FT_CALLBACK_TABLE
FT_Module_Class psnames_module_class;
FT_END_HEADER

View file

@ -179,9 +179,10 @@
}
FT_DEFINE_RENDERER(
ft_raster1_renderer_class,
FT_CALLBACK_TABLE_DEF
FT_Renderer_Class ft_raster1_renderer_class =
{
{
FT_MODULE_RENDERER,
sizeof ( FT_RendererRec ),
@ -193,7 +194,8 @@
ft_raster1_init, /* FT_Module_Constructor module_init */
NULL, /* FT_Module_Destructor module_done */
NULL, /* FT_Module_Requester get_interface */
NULL /* FT_Module_Requester get_interface */
},
FT_GLYPH_FORMAT_OUTLINE,
@ -203,7 +205,7 @@
ft_raster1_set_mode, /* FT_Renderer_SetModeFunc set_mode */
&ft_standard_raster /* FT_Raster_Funcs* raster_class */
)
};
/* END */

View file

@ -25,9 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_RENDERER( ft_raster1_renderer_class )
FT_CALLBACK_TABLE
FT_Renderer_Class ft_raster1_renderer_class;
FT_END_HEADER

View file

@ -424,21 +424,23 @@
}
FT_DEFINE_RENDERER(
ft_sdf_renderer_class,
FT_CALLBACK_TABLE_DEF
FT_Renderer_Class ft_sdf_renderer_class =
{
{
FT_MODULE_RENDERER,
sizeof ( SDF_Renderer_Module ),
FT_MODULE_RENDERER,
sizeof ( SDF_Renderer_Module ),
"sdf",
0x10000L,
0x20000L,
"sdf",
0x10000L,
0x20000L,
NULL,
NULL,
(FT_Module_Constructor)ft_sdf_init,
(FT_Module_Destructor) ft_sdf_done,
(FT_Module_Requester) ft_sdf_requester,
(FT_Module_Constructor)ft_sdf_init,
(FT_Module_Destructor) ft_sdf_done,
(FT_Module_Requester) ft_sdf_requester
},
FT_GLYPH_FORMAT_OUTLINE,
@ -448,7 +450,7 @@
(FT_Renderer_SetModeFunc) ft_sdf_set_mode, /* set_mode */
(FT_Raster_Funcs*)&ft_sdf_raster /* raster_class */
)
};
/*************************************************************************/
@ -573,21 +575,23 @@
}
FT_DEFINE_RENDERER(
ft_bitmap_sdf_renderer_class,
FT_CALLBACK_TABLE_DEF
FT_Renderer_Class ft_bitmap_sdf_renderer_class =
{
{
FT_MODULE_RENDERER,
sizeof ( SDF_Renderer_Module ),
FT_MODULE_RENDERER,
sizeof ( SDF_Renderer_Module ),
"bsdf",
0x10000L,
0x20000L,
"bsdf",
0x10000L,
0x20000L,
NULL,
NULL,
(FT_Module_Constructor)ft_sdf_init,
(FT_Module_Destructor) ft_sdf_done,
(FT_Module_Requester) ft_sdf_requester,
(FT_Module_Constructor)ft_sdf_init,
(FT_Module_Destructor) ft_sdf_done,
(FT_Module_Requester) ft_sdf_requester
},
FT_GLYPH_FORMAT_BITMAP,
@ -597,7 +601,7 @@
(FT_Renderer_SetModeFunc) ft_sdf_set_mode, /* set_mode */
(FT_Raster_Funcs*)&ft_bitmap_sdf_raster /* raster_class */
)
};
/* END */

View file

@ -91,7 +91,8 @@ FT_BEGIN_HEADER
* Renderer to convert @FT_Outline to signed distance fields.
*
*/
FT_DECLARE_RENDERER( ft_sdf_renderer_class )
FT_CALLBACK_TABLE
FT_Renderer_Class ft_sdf_renderer_class;
/**************************************************************************
@ -107,7 +108,8 @@ FT_BEGIN_HEADER
* This is not a separate module, it is part of the 'sdf' module.
*
*/
FT_DECLARE_RENDERER( ft_bitmap_sdf_renderer_class )
FT_CALLBACK_TABLE
FT_Renderer_Class ft_bitmap_sdf_renderer_class;
FT_END_HEADER

View file

@ -1363,9 +1363,9 @@
)
FT_DEFINE_MODULE(
sfnt_module_class,
FT_CALLBACK_TABLE_DEF
FT_Module_Class sfnt_module_class =
{
0, /* not a font driver or renderer */
sizeof ( FT_ModuleRec ),
@ -1378,7 +1378,7 @@
NULL, /* FT_Module_Constructor module_init */
NULL, /* FT_Module_Destructor module_done */
sfnt_get_interface /* FT_Module_Requester get_interface */
)
};
/* END */

View file

@ -25,7 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_MODULE( sfnt_module_class )
FT_CALLBACK_TABLE
FT_Module_Class sfnt_module_class;
FT_END_HEADER

View file

@ -575,9 +575,10 @@
}
FT_DEFINE_RENDERER(
ft_smooth_renderer_class,
FT_CALLBACK_TABLE_DEF
FT_Renderer_Class ft_smooth_renderer_class =
{
{
FT_MODULE_RENDERER,
sizeof ( FT_RendererRec ),
@ -589,7 +590,8 @@
(FT_Module_Constructor)ft_smooth_init, /* module_init */
(FT_Module_Destructor) NULL, /* module_done */
(FT_Module_Requester) NULL, /* get_interface */
(FT_Module_Requester) NULL /* get_interface */
},
FT_GLYPH_FORMAT_OUTLINE,
@ -599,7 +601,7 @@
(FT_Renderer_SetModeFunc) ft_smooth_set_mode, /* set_mode */
(FT_Raster_Funcs*)&ft_grays_raster /* raster_class */
)
};
/* END */

View file

@ -25,9 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_RENDERER( ft_smooth_renderer_class )
FT_CALLBACK_TABLE
FT_Renderer_Class ft_smooth_renderer_class;
FT_END_HEADER

View file

@ -326,9 +326,10 @@
#endif
FT_DEFINE_RENDERER(
ft_svg_renderer_class,
FT_CALLBACK_TABLE_DEF
FT_Renderer_Class ft_svg_renderer_class =
{
{
FT_MODULE_RENDERER,
sizeof ( SVG_RendererRec ),
@ -340,16 +341,17 @@
PUT_SVG_MODULE( ft_svg_init ), /* FT_Module_Constructor module_init */
PUT_SVG_MODULE( ft_svg_done ), /* FT_Module_Destructor module_done */
PUT_SVG_MODULE( ft_svg_get_interface ), /* FT_Module_Requester get_interface */
PUT_SVG_MODULE( ft_svg_get_interface ) /* FT_Module_Requester get_interface */
},
SVG_GLYPH_FORMAT,
SVG_GLYPH_FORMAT,
PUT_SVG_MODULE( ft_svg_render ), /* FT_Renderer_RenderFunc render_glyph */
PUT_SVG_MODULE( ft_svg_transform ), /* FT_Renderer_TransformFunc transform_glyph */
NULL, /* FT_Renderer_GetCBoxFunc get_glyph_cbox */
NULL, /* FT_Renderer_SetModeFunc set_mode */
NULL /* FT_Raster_Funcs* raster_class */
)
PUT_SVG_MODULE( ft_svg_render ), /* FT_Renderer_RenderFunc render_glyph */
PUT_SVG_MODULE( ft_svg_transform ), /* FT_Renderer_TransformFunc transform_glyph */
NULL, /* FT_Renderer_GetCBoxFunc get_glyph_cbox */
NULL, /* FT_Renderer_SetModeFunc set_mode */
NULL /* FT_Raster_Funcs* raster_class */
};
/* END */

View file

@ -25,7 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_RENDERER( ft_svg_renderer_class )
FT_CALLBACK_TABLE
FT_Renderer_Class ft_svg_renderer_class;
FT_END_HEADER

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += TRUETYPE_DRIVER
define TRUETYPE_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, tt_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, tt_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)truetype $(ECHO_DRIVER_DESC)Windows/Mac font files with extension *.ttf or *.ttc$(ECHO_DRIVER_DONE)
endef

View file

@ -660,9 +660,10 @@
#define TT_SIZE_SELECT 0
#endif
FT_DEFINE_DRIVER(
tt_driver_class,
FT_CALLBACK_TABLE_DEF
FT_Driver_Class tt_driver_class =
{
{
FT_MODULE_FONT_DRIVER |
FT_MODULE_DRIVER_SCALABLE |
TT_HINTER_FLAG,
@ -677,7 +678,8 @@
tt_driver_init, /* FT_Module_Constructor module_init */
tt_driver_done, /* FT_Module_Destructor module_done */
tt_get_interface, /* FT_Module_Requester get_interface */
tt_get_interface /* FT_Module_Requester get_interface */
},
sizeof ( TT_FaceRec ),
sizeof ( TT_SizeRec ),
@ -698,7 +700,7 @@
tt_size_request, /* FT_Size_RequestFunc request_size */
TT_SIZE_SELECT /* FT_Size_SelectFunc select_size */
)
};
/* END */

View file

@ -25,7 +25,8 @@
FT_BEGIN_HEADER
FT_DECLARE_DRIVER( tt_driver_class )
FT_CALLBACK_TABLE
FT_Driver_Class tt_driver_class;
FT_END_HEADER

View file

@ -252,7 +252,7 @@ FT_BEGIN_HEADER
/* Note: All of the functions below (except tt_size_reset()) are used */
/* as function pointers in a FT_Driver_ClassRec. Therefore their */
/* as function pointers in a FT_Driver_Class. Therefore their */
/* parameters are of types FT_Face, FT_Size, etc., rather than TT_Face, */
/* TT_Size, etc., so that the compiler can confirm that the types and */
/* number of parameters are correct. In all cases the FT_xxx types are */

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += TYPE1_DRIVER
define TYPE1_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, t1_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, t1_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)type1 $(ECHO_DRIVER_DESC)Postscript font files with extension *.pfa or *.pfb$(ECHO_DRIVER_DONE)
endef

View file

@ -757,7 +757,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec t1_driver_class =
FT_Driver_Class t1_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -25,7 +25,7 @@
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Driver_ClassRec ) t1_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) t1_driver_class;
FT_END_HEADER

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += TYPE42_DRIVER
define TYPE42_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, t42_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, t42_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)type42 $(ECHO_DRIVER_DESC)Type 42 font files with no known extension$(ECHO_DRIVER_DONE)
endef

View file

@ -199,7 +199,7 @@
}
const FT_Driver_ClassRec t42_driver_class =
FT_Driver_Class t42_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -25,7 +25,7 @@
FT_BEGIN_HEADER
FT_EXPORT_VAR( const FT_Driver_ClassRec ) t42_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) t42_driver_class;
FT_END_HEADER

View file

@ -485,7 +485,7 @@
return FT_THROW( Missing_Module );
}
driver->ttclazz = (FT_Driver_Class)ttmodule->clazz;
driver->ttclazz = (FT_Driver_Class*)ttmodule->clazz;
return FT_Err_Ok;
}
@ -651,11 +651,11 @@
FT_UInt glyph_index,
FT_Int32 load_flags )
{
FT_Error error;
T42_GlyphSlot t42slot = (T42_GlyphSlot)glyph;
T42_Size t42size = (T42_Size)size;
T42_Face t42face = (T42_Face)size->face;
FT_Driver_Class ttclazz = ((T42_Driver)glyph->face->driver)->ttclazz;
FT_Error error;
T42_GlyphSlot t42slot = (T42_GlyphSlot)glyph;
T42_Size t42size = (T42_Size)size;
T42_Face t42face = (T42_Face)size->face;
FT_Driver_Class* ttclazz = ((T42_Driver)glyph->face->driver)->ttclazz;
FT_TRACE1(( "T42_GlyphSlot_Load: glyph index %u\n", glyph_index ));

View file

@ -53,8 +53,8 @@ FT_BEGIN_HEADER
/* Type 42 driver */
typedef struct T42_DriverRec_
{
FT_DriverRec root;
FT_Driver_Class ttclazz;
FT_DriverRec root;
FT_Driver_Class* ttclazz;
} T42_DriverRec, *T42_Driver;

View file

@ -16,7 +16,7 @@
FTMODULE_H_COMMANDS += WINDOWS_DRIVER
define WINDOWS_DRIVER
$(OPEN_DRIVER) FT_Driver_ClassRec, winfnt_driver_class $(CLOSE_DRIVER)
$(OPEN_DRIVER) FT_Driver_Class, winfnt_driver_class $(CLOSE_DRIVER)
$(ECHO_DRIVER)winfnt $(ECHO_DRIVER_DESC)Windows bitmap fonts with extension *.fnt or *.fon$(ECHO_DRIVER_DONE)
endef

View file

@ -689,7 +689,8 @@
}
static const FT_CMap_ClassRec fnt_cmap_class_rec =
static
FT_CMap_ClassRec fnt_cmap_class =
{
sizeof ( FNT_CMapRec ),
@ -701,8 +702,6 @@
NULL, NULL, NULL, NULL, NULL
};
static FT_CMap_Class const fnt_cmap_class = &fnt_cmap_class_rec;
static void
FNT_Face_Done( FT_Face fntface ) /* FNT_Face */
@ -871,7 +870,7 @@
/* charmap.encoding_id = TT_MAC_ID_ROMAN; */
}
error = FT_CMap_New( fnt_cmap_class,
error = FT_CMap_New( &fnt_cmap_class,
NULL,
&charmap,
NULL );
@ -1176,7 +1175,7 @@
FT_CALLBACK_TABLE_DEF
const FT_Driver_ClassRec winfnt_driver_class =
FT_Driver_Class winfnt_driver_class =
{
{
FT_MODULE_FONT_DRIVER |

View file

@ -152,7 +152,7 @@ FT_BEGIN_HEADER
} FNT_FaceRec, *FNT_Face;
FT_EXPORT_VAR( const FT_Driver_ClassRec ) winfnt_driver_class;
FT_EXPORT_VAR( FT_Driver_Class ) winfnt_driver_class;
FT_END_HEADER