12.15. Data Definitions for libpangoft2-1.0

This section defines global identifiers and their values that are associated with interfaces contained in libpangoft2-1.0. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content. Where an interface is defined as requiring a particular system header file all of the data definitions for that system header file presented here shall be in effect.

This section gives data definitions to promote binary application portability, not to repeat source interface definitions available elsewhere. System providers and application developers should use this ABI to supplement - not to replace - source interface definition specifications.

This specification uses the ISO C (1999) C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.

12.15.1. pango-1.0/pango/pangofc-decoder.h


#define PANGO_FC_DECODER_CLASS(klass)	 \
	(G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FC_DECODER, \
	PangoFcDecoderClass))
#define PANGO_IS_FC_DECODER_CLASS(klass)	 \
	(G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FC_DECODER))
#define PANGO_FC_DECODER(object)	 \
	(G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FC_DECODER, \
	PangoFcDecoder))
#define PANGO_IS_FC_DECODER(object)	 \
	(G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FC_DECODER))
#define PANGO_FC_DECODER_GET_CLASS(obj)	 \
	(G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FC_DECODER, \
	PangoFcDecoderClass))
#define PANGO_TYPE_FC_DECODER	(pango_fc_decoder_get_type())

typedef struct _PangoFcDecoder {
    GObject parent_instance;
} PangoFcDecoder;
typedef struct _PangoFcDecoderClass {
    GObjectClass parent_class;
    FcCharSet *(*get_charset) (PangoFcDecoder *, PangoFcFont *);
     PangoGlyph(*get_glyph) (PangoFcDecoder *, PangoFcFont *, guint32);
    void (*_pango_reserved1) (void);
    void (*_pango_reserved2) (void);
    void (*_pango_reserved3) (void);
    void (*_pango_reserved4) (void);
} PangoFcDecoderClass;
extern FcCharSet *pango_fc_decoder_get_charset(PangoFcDecoder *,
					       PangoFcFont *);
extern PangoGlyph pango_fc_decoder_get_glyph(PangoFcDecoder *,
					     PangoFcFont *, guint32);
extern GType pango_fc_decoder_get_type(void);

12.15.2. pango-1.0/pango/pangofc-fontmap.h


#define PANGO_FC_FONT_MAP(object)	 \
	(G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FC_FONT_MAP, \
	PangoFcFontMap))
#define PANGO_IS_FC_FONT_MAP(object)	 \
	(G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FC_FONT_MAP))
#define PANGO_TYPE_FC_FONT_MAP	(pango_fc_font_map_get_type ())

typedef struct _PangoFcFontMap
 PangoFcFontMap;
typedef PangoFcDecoder *(*PangoFcDecoderFindFunc) (FcPattern *, gpointer);
typedef struct _PangoFcFontMapClass
 PangoFcFontMapClass;
extern void pango_fc_font_map_add_decoder_find_func(PangoFcFontMap *,
						    PangoFcDecoderFindFunc,
						    gpointer,
						    GDestroyNotify);
extern PangoFontDescription
    *pango_fc_font_description_from_pattern(FcPattern *, gboolean);
extern GType pango_fc_font_map_get_type(void);

12.15.3. pango-1.0/pango/pangoft2.h


#define PANGO_FC_FONT(object)	 \
	(G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FC_FONT, \
	PangoFcFont))
#define PANGO_FT2_FONT_MAP(object)	 \
	(G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FT2_FONT_MAP, \
	PangoFT2FontMap))
#define PANGO_IS_FC_FONT(object)	 \
	(G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FC_FONT))
#define PANGO_FT2_IS_FONT_MAP(object)	 \
	(G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FT2_FONT_MAP))
#define PANGO_TYPE_FC_FONT	(pango_fc_font_get_type ())
#define PANGO_TYPE_FT2_FONT_MAP	(pango_ft2_font_map_get_type ())

typedef struct _PangoFT2FontMap
 PangoFT2FontMap;
typedef void (*PangoFT2SubstituteFunc) (FcPattern *, gpointer);
extern void pango_ft2_font_map_set_default_substitute(PangoFT2FontMap *,
						      PangoFT2SubstituteFunc,
						      gpointer,
						      GDestroyNotify);
extern void pango_fc_font_unlock_face(PangoFcFont *);
extern GType pango_ft2_font_map_get_type(void);
extern void pango_ft2_render_transformed(FT_Bitmap *, const PangoMatrix *,
					 PangoFont *, PangoGlyphString *,
					 int, int);
extern PangoContext *pango_ft2_font_map_create_context(PangoFT2FontMap *);
extern void pango_ft2_render_layout_subpixel(FT_Bitmap *, PangoLayout *,
					     int, int);
extern void pango_ft2_render_layout(FT_Bitmap *, PangoLayout *, int, int);
extern void pango_ft2_font_map_set_resolution(PangoFT2FontMap *, double,
					      double);
extern void pango_ft2_render(FT_Bitmap *, PangoFont *, PangoGlyphString *,
			     int, int);
extern void pango_ft2_font_map_substitute_changed(PangoFT2FontMap *);
extern void pango_ft2_render_layout_line(FT_Bitmap *, PangoLayoutLine *,
					 int, int);
extern GType pango_fc_font_get_type(void);
extern void pango_ft2_render_layout_line_subpixel(FT_Bitmap *,
						  PangoLayoutLine *, int,
						  int);
extern FT_Face pango_fc_font_lock_face(PangoFcFont *);
extern PangoFontMap *pango_ft2_font_map_new(void);