nuclear@0: /***************************************************************************/ nuclear@0: /* */ nuclear@0: /* svbdf.h */ nuclear@0: /* */ nuclear@0: /* The FreeType BDF services (specification). */ nuclear@0: /* */ nuclear@0: /* Copyright 2003 by */ nuclear@0: /* David Turner, Robert Wilhelm, and Werner Lemberg. */ nuclear@0: /* */ nuclear@0: /* This file is part of the FreeType project, and may only be used, */ nuclear@0: /* modified, and distributed under the terms of the FreeType project */ nuclear@0: /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ nuclear@0: /* this file you indicate that you have read the license and */ nuclear@0: /* understand and accept it fully. */ nuclear@0: /* */ nuclear@0: /***************************************************************************/ nuclear@0: nuclear@0: nuclear@0: #ifndef __SVBDF_H__ nuclear@0: #define __SVBDF_H__ nuclear@0: nuclear@0: #include FT_BDF_H nuclear@0: #include FT_INTERNAL_SERVICE_H nuclear@0: nuclear@0: nuclear@0: FT_BEGIN_HEADER nuclear@0: nuclear@0: nuclear@0: #define FT_SERVICE_ID_BDF "bdf" nuclear@0: nuclear@0: typedef FT_Error nuclear@0: (*FT_BDF_GetCharsetIdFunc)( FT_Face face, nuclear@0: const char* *acharset_encoding, nuclear@0: const char* *acharset_registry ); nuclear@0: nuclear@0: typedef FT_Error nuclear@0: (*FT_BDF_GetPropertyFunc)( FT_Face face, nuclear@0: const char* prop_name, nuclear@0: BDF_PropertyRec *aproperty ); nuclear@0: nuclear@0: nuclear@0: FT_DEFINE_SERVICE( BDF ) nuclear@0: { nuclear@0: FT_BDF_GetCharsetIdFunc get_charset_id; nuclear@0: FT_BDF_GetPropertyFunc get_property; nuclear@0: }; nuclear@0: nuclear@0: #ifndef FT_CONFIG_OPTION_PIC nuclear@0: nuclear@0: #define FT_DEFINE_SERVICE_BDFRec(class_, get_charset_id_, get_property_) \ nuclear@0: static const FT_Service_BDFRec class_ = \ nuclear@0: { \ nuclear@0: get_charset_id_, get_property_ \ nuclear@0: }; nuclear@0: nuclear@0: #else /* FT_CONFIG_OPTION_PIC */ nuclear@0: nuclear@0: #define FT_DEFINE_SERVICE_BDFRec(class_, get_charset_id_, get_property_) \ nuclear@0: void \ nuclear@0: FT_Init_Class_##class_( FT_Service_BDFRec* clazz ) \ nuclear@0: { \ nuclear@0: clazz->get_charset_id = get_charset_id_; \ nuclear@0: clazz->get_property = get_property_; \ nuclear@0: } nuclear@0: nuclear@0: #endif /* FT_CONFIG_OPTION_PIC */ nuclear@0: nuclear@0: /* */ nuclear@0: nuclear@0: nuclear@0: FT_END_HEADER nuclear@0: nuclear@0: nuclear@0: #endif /* __SVBDF_H__ */ nuclear@0: nuclear@0: nuclear@0: /* END */