Blame fontconfig/fontconfig.h

Packit 352660
/*
Packit 352660
 * fontconfig/fontconfig/fontconfig.h
Packit 352660
 *
Packit 352660
 * Copyright © 2001 Keith Packard
Packit 352660
 *
Packit 352660
 * Permission to use, copy, modify, distribute, and sell this software and its
Packit 352660
 * documentation for any purpose is hereby granted without fee, provided that
Packit 352660
 * the above copyright notice appear in all copies and that both that
Packit 352660
 * copyright notice and this permission notice appear in supporting
Packit 352660
 * documentation, and that the name of the author(s) not be used in
Packit 352660
 * advertising or publicity pertaining to distribution of the software without
Packit 352660
 * specific, written prior permission.  The authors make no
Packit 352660
 * representations about the suitability of this software for any purpose.  It
Packit 352660
 * is provided "as is" without express or implied warranty.
Packit 352660
 *
Packit 352660
 * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
Packit 352660
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
Packit 352660
 * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
Packit 352660
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
Packit 352660
 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
Packit 352660
 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
Packit 352660
 * PERFORMANCE OF THIS SOFTWARE.
Packit 352660
 */
Packit 352660
Packit 352660
#ifndef _FONTCONFIG_H_
Packit 352660
#define _FONTCONFIG_H_
Packit 352660
Packit 352660
#include <sys/types.h>
Packit 352660
#include <sys/stat.h>
Packit 352660
#include <stdarg.h>
Packit 352660
#include <limits.h>
Packit 352660
Packit 352660
#if defined(__GNUC__) && (__GNUC__ >= 4)
Packit 352660
#define FC_ATTRIBUTE_SENTINEL(x) __attribute__((__sentinel__(0)))
Packit 352660
#else
Packit 352660
#define FC_ATTRIBUTE_SENTINEL(x)
Packit 352660
#endif
Packit 352660
Packit 352660
#ifndef FcPublic
Packit 352660
#define FcPublic
Packit 352660
#endif
Packit 352660
Packit 352660
typedef unsigned char	FcChar8;
Packit 352660
typedef unsigned short	FcChar16;
Packit 352660
typedef unsigned int	FcChar32;
Packit 352660
typedef int		FcBool;
Packit 352660
Packit 352660
/*
Packit 352660
 * Current Fontconfig version number.  This same number
Packit 352660
 * must appear in the fontconfig configure.in file. Yes,
Packit 352660
 * it'a a pain to synchronize version numbers like this.
Packit 352660
 */
Packit 352660
Packit 352660
#define FC_MAJOR	2
Packit 352660
#define FC_MINOR	13
Packit 352660
#define FC_REVISION	1
Packit 352660
Packit 352660
#define FC_VERSION	((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
Packit 352660
Packit 352660
/*
Packit 352660
 * Current font cache file format version
Packit 352660
 * This is appended to the cache files so that multiple
Packit 352660
 * versions of the library will peacefully coexist
Packit 352660
 *
Packit 352660
 * Change this value whenever the disk format for the cache file
Packit 352660
 * changes in any non-compatible way.  Try to avoid such changes as
Packit 352660
 * it means multiple copies of the font information.
Packit 352660
 */
Packit 352660
Packit 352660
#define FC_CACHE_VERSION_NUMBER	7
Packit 352660
#define _FC_STRINGIFY_(s)    	#s
Packit 352660
#define _FC_STRINGIFY(s)    	_FC_STRINGIFY_(s)
Packit 352660
#define FC_CACHE_VERSION    	_FC_STRINGIFY(FC_CACHE_VERSION_NUMBER)
Packit 352660
Packit 352660
#define FcFalse		0
Packit 352660
#define FcTrue		1
Packit 352660
#define FcDontCare	2
Packit 352660
Packit 352660
#define FC_FAMILY	    "family"		/* String */
Packit 352660
#define FC_STYLE	    "style"		/* String */
Packit 352660
#define FC_SLANT	    "slant"		/* Int */
Packit 352660
#define FC_WEIGHT	    "weight"		/* Int */
Packit 352660
#define FC_SIZE		    "size"		/* Range (double) */
Packit 352660
#define FC_ASPECT	    "aspect"		/* Double */
Packit 352660
#define FC_PIXEL_SIZE	    "pixelsize"		/* Double */
Packit 352660
#define FC_SPACING	    "spacing"		/* Int */
Packit 352660
#define FC_FOUNDRY	    "foundry"		/* String */
Packit 352660
#define FC_ANTIALIAS	    "antialias"		/* Bool (depends) */
Packit 352660
#define FC_HINTING	    "hinting"		/* Bool (true) */
Packit 352660
#define FC_HINT_STYLE	    "hintstyle"		/* Int */
Packit 352660
#define FC_VERTICAL_LAYOUT  "verticallayout"	/* Bool (false) */
Packit 352660
#define FC_AUTOHINT	    "autohint"		/* Bool (false) */
Packit 352660
/* FC_GLOBAL_ADVANCE is deprecated. this is simply ignored on freetype 2.4.5 or later */
Packit 352660
#define FC_GLOBAL_ADVANCE   "globaladvance"	/* Bool (true) */
Packit 352660
#define FC_WIDTH	    "width"		/* Int */
Packit 352660
#define FC_FILE		    "file"		/* String */
Packit 352660
#define FC_INDEX	    "index"		/* Int */
Packit 352660
#define FC_FT_FACE	    "ftface"		/* FT_Face */
Packit 352660
#define FC_RASTERIZER	    "rasterizer"	/* String (deprecated) */
Packit 352660
#define FC_OUTLINE	    "outline"		/* Bool */
Packit 352660
#define FC_SCALABLE	    "scalable"		/* Bool */
Packit 352660
#define FC_COLOR	    "color"		/* Bool */
Packit 352660
#define FC_VARIABLE	    "variable"		/* Bool */
Packit 352660
#define FC_SCALE	    "scale"		/* double (deprecated) */
Packit 352660
#define FC_SYMBOL	    "symbol"		/* Bool */
Packit 352660
#define FC_DPI		    "dpi"		/* double */
Packit 352660
#define FC_RGBA		    "rgba"		/* Int */
Packit 352660
#define FC_MINSPACE	    "minspace"		/* Bool use minimum line spacing */
Packit 352660
#define FC_SOURCE	    "source"		/* String (deprecated) */
Packit 352660
#define FC_CHARSET	    "charset"		/* CharSet */
Packit 352660
#define FC_LANG		    "lang"		/* String RFC 3066 langs */
Packit 352660
#define FC_FONTVERSION	    "fontversion"	/* Int from 'head' table */
Packit 352660
#define FC_FULLNAME	    "fullname"		/* String */
Packit 352660
#define FC_FAMILYLANG	    "familylang"	/* String RFC 3066 langs */
Packit 352660
#define FC_STYLELANG	    "stylelang"		/* String RFC 3066 langs */
Packit 352660
#define FC_FULLNAMELANG	    "fullnamelang"	/* String RFC 3066 langs */
Packit 352660
#define FC_CAPABILITY       "capability"	/* String */
Packit 352660
#define FC_FONTFORMAT	    "fontformat"	/* String */
Packit 352660
#define FC_EMBOLDEN	    "embolden"		/* Bool - true if emboldening needed*/
Packit 352660
#define FC_EMBEDDED_BITMAP  "embeddedbitmap"	/* Bool - true to enable embedded bitmaps */
Packit 352660
#define FC_DECORATIVE	    "decorative"	/* Bool - true if style is a decorative variant */
Packit 352660
#define FC_LCD_FILTER	    "lcdfilter"		/* Int */
Packit 352660
#define FC_FONT_FEATURES    "fontfeatures"	/* String */
Packit 352660
#define FC_FONT_VARIATIONS  "fontvariations"	/* String */
Packit 352660
#define FC_NAMELANG	    "namelang"		/* String RFC 3866 langs */
Packit 352660
#define FC_PRGNAME	    "prgname"		/* String */
Packit 352660
#define FC_HASH		    "hash"		/* String (deprecated) */
Packit 352660
#define FC_POSTSCRIPT_NAME  "postscriptname"	/* String */
Packit 352660
Packit 352660
#define FC_CACHE_SUFFIX		    ".cache-" FC_CACHE_VERSION
Packit 352660
#define FC_DIR_CACHE_FILE	    "fonts.cache-" FC_CACHE_VERSION
Packit 352660
#define FC_USER_CACHE_FILE	    ".fonts.cache-" FC_CACHE_VERSION
Packit 352660
Packit 352660
/* Adjust outline rasterizer */
Packit 352660
#define FC_CHARWIDTH	    "charwidth"	/* Int */
Packit 352660
#define FC_CHAR_WIDTH	    FC_CHARWIDTH
Packit 352660
#define FC_CHAR_HEIGHT	    "charheight"/* Int */
Packit 352660
#define FC_MATRIX	    "matrix"    /* FcMatrix */
Packit 352660
Packit 352660
#define FC_WEIGHT_THIN		    0
Packit 352660
#define FC_WEIGHT_EXTRALIGHT	    40
Packit 352660
#define FC_WEIGHT_ULTRALIGHT	    FC_WEIGHT_EXTRALIGHT
Packit 352660
#define FC_WEIGHT_LIGHT		    50
Packit 352660
#define FC_WEIGHT_DEMILIGHT	    55
Packit 352660
#define FC_WEIGHT_SEMILIGHT	    FC_WEIGHT_DEMILIGHT
Packit 352660
#define FC_WEIGHT_BOOK		    75
Packit 352660
#define FC_WEIGHT_REGULAR	    80
Packit 352660
#define FC_WEIGHT_NORMAL	    FC_WEIGHT_REGULAR
Packit 352660
#define FC_WEIGHT_MEDIUM	    100
Packit 352660
#define FC_WEIGHT_DEMIBOLD	    180
Packit 352660
#define FC_WEIGHT_SEMIBOLD	    FC_WEIGHT_DEMIBOLD
Packit 352660
#define FC_WEIGHT_BOLD		    200
Packit 352660
#define FC_WEIGHT_EXTRABOLD	    205
Packit 352660
#define FC_WEIGHT_ULTRABOLD	    FC_WEIGHT_EXTRABOLD
Packit 352660
#define FC_WEIGHT_BLACK		    210
Packit 352660
#define FC_WEIGHT_HEAVY		    FC_WEIGHT_BLACK
Packit 352660
#define FC_WEIGHT_EXTRABLACK	    215
Packit 352660
#define FC_WEIGHT_ULTRABLACK	    FC_WEIGHT_EXTRABLACK
Packit 352660
Packit 352660
#define FC_SLANT_ROMAN		    0
Packit 352660
#define FC_SLANT_ITALIC		    100
Packit 352660
#define FC_SLANT_OBLIQUE	    110
Packit 352660
Packit 352660
#define FC_WIDTH_ULTRACONDENSED	    50
Packit 352660
#define FC_WIDTH_EXTRACONDENSED	    63
Packit 352660
#define FC_WIDTH_CONDENSED	    75
Packit 352660
#define FC_WIDTH_SEMICONDENSED	    87
Packit 352660
#define FC_WIDTH_NORMAL		    100
Packit 352660
#define FC_WIDTH_SEMIEXPANDED	    113
Packit 352660
#define FC_WIDTH_EXPANDED	    125
Packit 352660
#define FC_WIDTH_EXTRAEXPANDED	    150
Packit 352660
#define FC_WIDTH_ULTRAEXPANDED	    200
Packit 352660
Packit 352660
#define FC_PROPORTIONAL		    0
Packit 352660
#define FC_DUAL			    90
Packit 352660
#define FC_MONO			    100
Packit 352660
#define FC_CHARCELL		    110
Packit 352660
Packit 352660
/* sub-pixel order */
Packit 352660
#define FC_RGBA_UNKNOWN	    0
Packit 352660
#define FC_RGBA_RGB	    1
Packit 352660
#define FC_RGBA_BGR	    2
Packit 352660
#define FC_RGBA_VRGB	    3
Packit 352660
#define FC_RGBA_VBGR	    4
Packit 352660
#define FC_RGBA_NONE	    5
Packit 352660
Packit 352660
/* hinting style */
Packit 352660
#define FC_HINT_NONE        0
Packit 352660
#define FC_HINT_SLIGHT      1
Packit 352660
#define FC_HINT_MEDIUM      2
Packit 352660
#define FC_HINT_FULL        3
Packit 352660
Packit 352660
/* LCD filter */
Packit 352660
#define FC_LCD_NONE	    0
Packit 352660
#define FC_LCD_DEFAULT	    1
Packit 352660
#define FC_LCD_LIGHT	    2
Packit 352660
#define FC_LCD_LEGACY	    3
Packit 352660
Packit 352660
typedef enum _FcType {
Packit 352660
    FcTypeUnknown = -1,
Packit 352660
    FcTypeVoid,
Packit 352660
    FcTypeInteger,
Packit 352660
    FcTypeDouble,
Packit 352660
    FcTypeString,
Packit 352660
    FcTypeBool,
Packit 352660
    FcTypeMatrix,
Packit 352660
    FcTypeCharSet,
Packit 352660
    FcTypeFTFace,
Packit 352660
    FcTypeLangSet,
Packit 352660
    FcTypeRange
Packit 352660
} FcType;
Packit 352660
Packit 352660
typedef struct _FcMatrix {
Packit 352660
    double xx, xy, yx, yy;
Packit 352660
} FcMatrix;
Packit 352660
Packit 352660
#define FcMatrixInit(m)	((m)->xx = (m)->yy = 1, \
Packit 352660
			 (m)->xy = (m)->yx = 0)
Packit 352660
Packit 352660
/*
Packit 352660
 * A data structure to represent the available glyphs in a font.
Packit 352660
 * This is represented as a sparse boolean btree.
Packit 352660
 */
Packit 352660
Packit 352660
typedef struct _FcCharSet FcCharSet;
Packit 352660
Packit 352660
typedef struct _FcObjectType {
Packit 352660
    char	*object;
Packit 352660
    FcType	type;
Packit 352660
} FcObjectType;
Packit 352660
Packit 352660
typedef struct _FcConstant {
Packit 352660
    const FcChar8  *name;
Packit 352660
    const char	*object;
Packit 352660
    int		value;
Packit 352660
} FcConstant;
Packit 352660
Packit 352660
typedef enum _FcResult {
Packit 352660
    FcResultMatch, FcResultNoMatch, FcResultTypeMismatch, FcResultNoId,
Packit 352660
    FcResultOutOfMemory
Packit 352660
} FcResult;
Packit 352660
Packit 352660
typedef enum _FcValueBinding {
Packit 352660
    FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame,
Packit 352660
    /* to make sure sizeof (FcValueBinding) == 4 even with -fshort-enums */
Packit 352660
    FcValueBindingEnd = INT_MAX
Packit 352660
} FcValueBinding;
Packit 352660
Packit 352660
typedef struct _FcPattern   FcPattern;
Packit 352660
Packit 352660
typedef struct _FcPatternIter {
Packit 352660
    void *dummy1;
Packit 352660
    void *dummy2;
Packit 352660
} FcPatternIter;
Packit 352660
Packit 352660
typedef struct _FcLangSet   FcLangSet;
Packit 352660
Packit 352660
typedef struct _FcRange	    FcRange;
Packit 352660
Packit 352660
typedef struct _FcValue {
Packit 352660
    FcType	type;
Packit 352660
    union {
Packit 352660
	const FcChar8	*s;
Packit 352660
	int		i;
Packit 352660
	FcBool		b;
Packit 352660
	double		d;
Packit 352660
	const FcMatrix	*m;
Packit 352660
	const FcCharSet	*c;
Packit 352660
	void		*f;
Packit 352660
	const FcLangSet	*l;
Packit 352660
	const FcRange	*r;
Packit 352660
    } u;
Packit 352660
} FcValue;
Packit 352660
Packit 352660
typedef struct _FcFontSet {
Packit 352660
    int		nfont;
Packit 352660
    int		sfont;
Packit 352660
    FcPattern	**fonts;
Packit 352660
} FcFontSet;
Packit 352660
Packit 352660
typedef struct _FcObjectSet {
Packit 352660
    int		nobject;
Packit 352660
    int		sobject;
Packit 352660
    const char	**objects;
Packit 352660
} FcObjectSet;
Packit 352660
    
Packit 352660
typedef enum _FcMatchKind {
Packit 352660
    FcMatchPattern, FcMatchFont, FcMatchScan,
Packit 352660
    FcMatchKindEnd,
Packit 352660
    FcMatchKindBegin = FcMatchPattern
Packit 352660
} FcMatchKind;
Packit 352660
Packit 352660
typedef enum _FcLangResult {
Packit 352660
    FcLangEqual = 0,
Packit 352660
    FcLangDifferentCountry = 1,
Packit 352660
    FcLangDifferentTerritory = 1,
Packit 352660
    FcLangDifferentLang = 2
Packit 352660
} FcLangResult;
Packit 352660
Packit 352660
typedef enum _FcSetName {
Packit 352660
    FcSetSystem = 0,
Packit 352660
    FcSetApplication = 1
Packit 352660
} FcSetName;
Packit 352660
Packit 352660
typedef struct _FcConfigFileInfoIter {
Packit 352660
    void	*dummy1;
Packit 352660
    void	*dummy2;
Packit 352660
    void	*dummy3;
Packit 352660
} FcConfigFileInfoIter;
Packit 352660
Packit 352660
typedef struct _FcAtomic FcAtomic;
Packit 352660
Packit 352660
#if defined(__cplusplus) || defined(c_plusplus) /* for C++ V2.0 */
Packit 352660
#define _FCFUNCPROTOBEGIN extern "C" {	/* do not leave open across includes */
Packit 352660
#define _FCFUNCPROTOEND }
Packit 352660
#else
Packit 352660
#define _FCFUNCPROTOBEGIN
Packit 352660
#define _FCFUNCPROTOEND
Packit 352660
#endif
Packit 352660
Packit 352660
typedef enum { FcEndianBig, FcEndianLittle } FcEndian;
Packit 352660
Packit 352660
typedef struct _FcConfig    FcConfig;
Packit 352660
Packit 352660
typedef struct _FcGlobalCache	FcFileCache;
Packit 352660
Packit 352660
typedef struct _FcBlanks    FcBlanks;
Packit 352660
Packit 352660
typedef struct _FcStrList   FcStrList;
Packit 352660
Packit 352660
typedef struct _FcStrSet    FcStrSet;
Packit 352660
Packit 352660
typedef struct _FcCache	    FcCache;
Packit 352660
Packit 352660
_FCFUNCPROTOBEGIN
Packit 352660
Packit 352660
/* fcblanks.c */
Packit 352660
FcPublic FcBlanks *
Packit 352660
FcBlanksCreate (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcBlanksDestroy (FcBlanks *b);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcBlanksAdd (FcBlanks *b, FcChar32 ucs4);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4);
Packit 352660
Packit 352660
/* fccache.c */
Packit 352660
Packit 352660
FcPublic const FcChar8 *
Packit 352660
FcCacheDir(const FcCache *c);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcCacheCopySet(const FcCache *c);
Packit 352660
Packit 352660
FcPublic const FcChar8 *
Packit 352660
FcCacheSubdir (const FcCache *c, int i);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcCacheNumSubdir (const FcCache *c);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcCacheNumFont (const FcCache *c);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirCacheValid (const FcChar8 *cache_file);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcCacheCreateTagFile (const FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirCacheCreateUUID (FcChar8  *dir,
Packit 352660
		      FcBool    force,
Packit 352660
		      FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirCacheDeleteUUID (const FcChar8  *dir,
Packit 352660
		      FcConfig       *config);
Packit 352660
Packit 352660
/* fccfg.c */
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcConfigHome (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigEnableHome (FcBool enable);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcConfigFilename (const FcChar8 *url);
Packit 352660
    
Packit 352660
FcPublic FcConfig *
Packit 352660
FcConfigCreate (void);
Packit 352660
Packit 352660
FcPublic FcConfig *
Packit 352660
FcConfigReference (FcConfig *config);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcConfigDestroy (FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigSetCurrent (FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcConfig *
Packit 352660
FcConfigGetCurrent (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigUptoDate (FcConfig *config);
Packit 352660
    
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigBuildFonts (FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcStrList *
Packit 352660
FcConfigGetFontDirs (FcConfig   *config);
Packit 352660
Packit 352660
FcPublic FcStrList *
Packit 352660
FcConfigGetConfigDirs (FcConfig   *config);
Packit 352660
Packit 352660
FcPublic FcStrList *
Packit 352660
FcConfigGetConfigFiles (FcConfig    *config);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcConfigGetCache (FcConfig  *config);
Packit 352660
Packit 352660
FcPublic FcBlanks *
Packit 352660
FcConfigGetBlanks (FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcStrList *
Packit 352660
FcConfigGetCacheDirs (const FcConfig	*config);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcConfigGetRescanInterval (FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigSetRescanInterval (FcConfig *config, int rescanInterval);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcConfigGetFonts (FcConfig	*config,
Packit 352660
		  FcSetName	set);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigAppFontAddFile (FcConfig    *config,
Packit 352660
			const FcChar8  *file);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigAppFontAddDir (FcConfig	    *config,
Packit 352660
		       const FcChar8   *dir);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcConfigAppFontClear (FcConfig	    *config);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigSubstituteWithPat (FcConfig	*config,
Packit 352660
			   FcPattern	*p,
Packit 352660
			   FcPattern	*p_pat,
Packit 352660
			   FcMatchKind	kind);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigSubstitute (FcConfig	*config,
Packit 352660
		    FcPattern	*p,
Packit 352660
		    FcMatchKind	kind);
Packit 352660
Packit 352660
FcPublic const FcChar8 *
Packit 352660
FcConfigGetSysRoot (const FcConfig *config);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcConfigSetSysRoot (FcConfig      *config,
Packit 352660
		    const FcChar8 *sysroot);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcConfigFileInfoIterInit (FcConfig		*config,
Packit 352660
			  FcConfigFileInfoIter	*iter);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigFileInfoIterNext (FcConfig		*config,
Packit 352660
			  FcConfigFileInfoIter	*iter);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigFileInfoIterGet (FcConfig		*config,
Packit 352660
			 FcConfigFileInfoIter	*iter,
Packit 352660
			 FcChar8		**name,
Packit 352660
			 FcChar8		**description,
Packit 352660
			 FcBool			*enabled);
Packit 352660
Packit 352660
/* fccharset.c */
Packit 352660
FcPublic FcCharSet*
Packit 352660
FcCharSetCreate (void);
Packit 352660
Packit 352660
/* deprecated alias for FcCharSetCreate */
Packit 352660
FcPublic FcCharSet *
Packit 352660
FcCharSetNew (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcCharSetDestroy (FcCharSet *fcs);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetDelChar (FcCharSet *fcs, FcChar32 ucs4);
Packit 352660
Packit 352660
FcPublic FcCharSet*
Packit 352660
FcCharSetCopy (FcCharSet *src);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetEqual (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcCharSet*
Packit 352660
FcCharSetIntersect (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcCharSet*
Packit 352660
FcCharSetUnion (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcCharSet*
Packit 352660
FcCharSetSubtract (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetMerge (FcCharSet *a, const FcCharSet *b, FcBool *changed);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetHasChar (const FcCharSet *fcs, FcChar32 ucs4);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetCount (const FcCharSet *a);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b);
Packit 352660
Packit 352660
#define FC_CHARSET_MAP_SIZE (256/32)
Packit 352660
#define FC_CHARSET_DONE	((FcChar32) -1)
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetFirstPage (const FcCharSet *a, 
Packit 352660
		    FcChar32	    map[FC_CHARSET_MAP_SIZE],
Packit 352660
		    FcChar32	    *next);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetNextPage (const FcCharSet  *a, 
Packit 352660
		   FcChar32	    map[FC_CHARSET_MAP_SIZE],
Packit 352660
		   FcChar32	    *next);
Packit 352660
Packit 352660
/*
Packit 352660
 * old coverage API, rather hard to use correctly
Packit 352660
 */
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result);
Packit 352660
Packit 352660
/* fcdbg.c */
Packit 352660
FcPublic void
Packit 352660
FcValuePrint (const FcValue v);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcPatternPrint (const FcPattern *p);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcFontSetPrint (const FcFontSet *s);
Packit 352660
Packit 352660
/* fcdefault.c */
Packit 352660
FcPublic FcStrSet *
Packit 352660
FcGetDefaultLangs (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcDefaultSubstitute (FcPattern *pattern);
Packit 352660
Packit 352660
/* fcdir.c */
Packit 352660
FcPublic FcBool
Packit 352660
FcFileIsDir (const FcChar8 *file);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcFileScan (FcFontSet	    *set,
Packit 352660
	    FcStrSet	    *dirs,
Packit 352660
	    FcFileCache	    *cache,
Packit 352660
	    FcBlanks	    *blanks,
Packit 352660
	    const FcChar8   *file,
Packit 352660
	    FcBool	    force);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirScan (FcFontSet	    *set,
Packit 352660
	   FcStrSet	    *dirs,
Packit 352660
	   FcFileCache	    *cache,
Packit 352660
	   FcBlanks	    *blanks,
Packit 352660
	   const FcChar8    *dir,
Packit 352660
	   FcBool	    force);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
Packit 352660
Packit 352660
FcPublic FcCache *
Packit 352660
FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file);
Packit 352660
Packit 352660
FcPublic FcCache *
Packit 352660
FcDirCacheRescan (const FcChar8 *dir, FcConfig *config);
Packit 352660
    
Packit 352660
FcPublic FcCache *
Packit 352660
FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config);
Packit 352660
Packit 352660
FcPublic FcCache *
Packit 352660
FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcDirCacheUnload (FcCache *cache);
Packit 352660
Packit 352660
/* fcfreetype.c */
Packit 352660
FcPublic FcPattern *
Packit 352660
FcFreeTypeQuery (const FcChar8 *file, unsigned int id, FcBlanks *blanks, int *count);
Packit 352660
Packit 352660
FcPublic unsigned int
Packit 352660
FcFreeTypeQueryAll(const FcChar8 *file, unsigned int id, FcBlanks *blanks, int *count, FcFontSet *set);
Packit 352660
Packit 352660
/* fcfs.c */
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcFontSetCreate (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcFontSetDestroy (FcFontSet *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcFontSetAdd (FcFontSet *s, FcPattern *font);
Packit 352660
Packit 352660
/* fcinit.c */
Packit 352660
FcPublic FcConfig *
Packit 352660
FcInitLoadConfig (void);
Packit 352660
Packit 352660
FcPublic FcConfig *
Packit 352660
FcInitLoadConfigAndFonts (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcInit (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcFini (void);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcGetVersion (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcInitReinitialize (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcInitBringUptoDate (void);
Packit 352660
Packit 352660
/* fclang.c */
Packit 352660
FcPublic FcStrSet *
Packit 352660
FcGetLangs (void);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcLangNormalize (const FcChar8 *lang);
Packit 352660
Packit 352660
FcPublic const FcCharSet *
Packit 352660
FcLangGetCharSet (const FcChar8 *lang);
Packit 352660
Packit 352660
FcPublic FcLangSet*
Packit 352660
FcLangSetCreate (void);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcLangSetDestroy (FcLangSet *ls);
Packit 352660
Packit 352660
FcPublic FcLangSet*
Packit 352660
FcLangSetCopy (const FcLangSet *ls);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcLangSetAdd (FcLangSet *ls, const FcChar8 *lang);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcLangSetDel (FcLangSet *ls, const FcChar8 *lang);
Packit 352660
Packit 352660
FcPublic FcLangResult
Packit 352660
FcLangSetHasLang (const FcLangSet *ls, const FcChar8 *lang);
Packit 352660
Packit 352660
FcPublic FcLangResult
Packit 352660
FcLangSetCompare (const FcLangSet *lsa, const FcLangSet *lsb);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcLangSetContains (const FcLangSet *lsa, const FcLangSet *lsb);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcLangSetEqual (const FcLangSet *lsa, const FcLangSet *lsb);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcLangSetHash (const FcLangSet *ls);
Packit 352660
Packit 352660
FcPublic FcStrSet *
Packit 352660
FcLangSetGetLangs (const FcLangSet *ls);
Packit 352660
Packit 352660
FcPublic FcLangSet *
Packit 352660
FcLangSetUnion (const FcLangSet *a, const FcLangSet *b);
Packit 352660
Packit 352660
FcPublic FcLangSet *
Packit 352660
FcLangSetSubtract (const FcLangSet *a, const FcLangSet *b);
Packit 352660
Packit 352660
/* fclist.c */
Packit 352660
FcPublic FcObjectSet *
Packit 352660
FcObjectSetCreate (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcObjectSetAdd (FcObjectSet *os, const char *object);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcObjectSetDestroy (FcObjectSet *os);
Packit 352660
Packit 352660
FcPublic FcObjectSet *
Packit 352660
FcObjectSetVaBuild (const char *first, va_list va);
Packit 352660
Packit 352660
FcPublic FcObjectSet *
Packit 352660
FcObjectSetBuild (const char *first, ...) FC_ATTRIBUTE_SENTINEL(0);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcFontSetList (FcConfig	    *config,
Packit 352660
	       FcFontSet    **sets,
Packit 352660
	       int	    nsets,
Packit 352660
	       FcPattern    *p,
Packit 352660
	       FcObjectSet  *os);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcFontList (FcConfig	*config,
Packit 352660
	    FcPattern	*p,
Packit 352660
	    FcObjectSet *os);
Packit 352660
Packit 352660
/* fcatomic.c */
Packit 352660
Packit 352660
FcPublic FcAtomic *
Packit 352660
FcAtomicCreate (const FcChar8   *file);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcAtomicLock (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcAtomicNewFile (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcAtomicOrigFile (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcAtomicReplaceOrig (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcAtomicDeleteNew (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcAtomicUnlock (FcAtomic *atomic);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcAtomicDestroy (FcAtomic *atomic);
Packit 352660
Packit 352660
/* fcmatch.c */
Packit 352660
FcPublic FcPattern *
Packit 352660
FcFontSetMatch (FcConfig    *config,
Packit 352660
		FcFontSet   **sets,
Packit 352660
		int	    nsets,
Packit 352660
		FcPattern   *p,
Packit 352660
		FcResult    *result);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcFontMatch (FcConfig	*config,
Packit 352660
	     FcPattern	*p, 
Packit 352660
	     FcResult	*result);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcFontRenderPrepare (FcConfig	    *config,
Packit 352660
		     FcPattern	    *pat,
Packit 352660
		     FcPattern	    *font);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcFontSetSort (FcConfig	    *config,
Packit 352660
	       FcFontSet    **sets,
Packit 352660
	       int	    nsets,
Packit 352660
	       FcPattern    *p,
Packit 352660
	       FcBool	    trim,
Packit 352660
	       FcCharSet    **csp,
Packit 352660
	       FcResult	    *result);
Packit 352660
Packit 352660
FcPublic FcFontSet *
Packit 352660
FcFontSort (FcConfig	 *config,
Packit 352660
	    FcPattern    *p,
Packit 352660
	    FcBool	 trim,
Packit 352660
	    FcCharSet    **csp,
Packit 352660
	    FcResult	 *result);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcFontSetSortDestroy (FcFontSet *fs);
Packit 352660
Packit 352660
/* fcmatrix.c */
Packit 352660
FcPublic FcMatrix *
Packit 352660
FcMatrixCopy (const FcMatrix *mat);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcMatrixEqual (const FcMatrix *mat1, const FcMatrix *mat2);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcMatrixMultiply (FcMatrix *result, const FcMatrix *a, const FcMatrix *b);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcMatrixRotate (FcMatrix *m, double c, double s);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcMatrixScale (FcMatrix *m, double sx, double sy);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcMatrixShear (FcMatrix *m, double sh, double sv);
Packit 352660
Packit 352660
/* fcname.c */
Packit 352660
Packit 352660
/* Deprecated.  Does nothing.  Returns FcFalse. */
Packit 352660
FcPublic FcBool
Packit 352660
FcNameRegisterObjectTypes (const FcObjectType *types, int ntype);
Packit 352660
Packit 352660
/* Deprecated.  Does nothing.  Returns FcFalse. */
Packit 352660
FcPublic FcBool
Packit 352660
FcNameUnregisterObjectTypes (const FcObjectType *types, int ntype);
Packit 352660
Packit 352660
FcPublic const FcObjectType *
Packit 352660
FcNameGetObjectType (const char *object);
Packit 352660
Packit 352660
/* Deprecated.  Does nothing.  Returns FcFalse. */
Packit 352660
FcPublic FcBool
Packit 352660
FcNameRegisterConstants (const FcConstant *consts, int nconsts);
Packit 352660
Packit 352660
/* Deprecated.  Does nothing.  Returns FcFalse. */
Packit 352660
FcPublic FcBool
Packit 352660
FcNameUnregisterConstants (const FcConstant *consts, int nconsts);
Packit 352660
Packit 352660
FcPublic const FcConstant *
Packit 352660
FcNameGetConstant (const FcChar8 *string);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcNameConstant (const FcChar8 *string, int *result);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcNameParse (const FcChar8 *name);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcNameUnparse (FcPattern *pat);
Packit 352660
Packit 352660
/* fcpat.c */
Packit 352660
FcPublic FcPattern *
Packit 352660
FcPatternCreate (void);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcPatternDuplicate (const FcPattern *p);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcPatternReference (FcPattern *p);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcPatternFilter (FcPattern *p, const FcObjectSet *os);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcValueDestroy (FcValue v);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcValueEqual (FcValue va, FcValue vb);
Packit 352660
Packit 352660
FcPublic FcValue
Packit 352660
FcValueSave (FcValue v);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcPatternDestroy (FcPattern *p);
Packit 352660
Packit 352660
int
Packit 352660
FcPatternObjectCount (const FcPattern *pat);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternEqual (const FcPattern *pa, const FcPattern *pb);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternEqualSubset (const FcPattern *pa, const FcPattern *pb, const FcObjectSet *os);
Packit 352660
Packit 352660
FcPublic FcChar32
Packit 352660
FcPatternHash (const FcPattern *p);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAdd (FcPattern *p, const char *object, FcValue value, FcBool append);
Packit 352660
    
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddWeak (FcPattern *p, const char *object, FcValue value, FcBool append);
Packit 352660
    
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGet (const FcPattern *p, const char *object, int id, FcValue *v);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetWithBinding (const FcPattern *p, const char *object, int id, FcValue *v, FcValueBinding *b);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternDel (FcPattern *p, const char *object);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternRemove (FcPattern *p, const char *object, int id);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddInteger (FcPattern *p, const char *object, int i);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddDouble (FcPattern *p, const char *object, double d);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddString (FcPattern *p, const char *object, const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddMatrix (FcPattern *p, const char *object, const FcMatrix *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddCharSet (FcPattern *p, const char *object, const FcCharSet *c);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddBool (FcPattern *p, const char *object, FcBool b);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetInteger (const FcPattern *p, const char *object, int n, int *i);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetDouble (const FcPattern *p, const char *object, int n, double *d);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetString (const FcPattern *p, const char *object, int n, FcChar8 ** s);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetMatrix (const FcPattern *p, const char *object, int n, FcMatrix **s);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetCharSet (const FcPattern *p, const char *object, int n, FcCharSet **c);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetBool (const FcPattern *p, const char *object, int n, FcBool *b);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetLangSet (const FcPattern *p, const char *object, int n, FcLangSet **ls);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r);
Packit 352660
Packit 352660
FcPublic FcPattern *
Packit 352660
FcPatternVaBuild (FcPattern *p, va_list va);
Packit 352660
    
Packit 352660
FcPublic FcPattern *
Packit 352660
FcPatternBuild (FcPattern *p, ...) FC_ATTRIBUTE_SENTINEL(0);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcPatternFormat (FcPattern *pat, const FcChar8 *format);
Packit 352660
Packit 352660
/* fcrange.c */
Packit 352660
FcPublic FcRange *
Packit 352660
FcRangeCreateDouble (double begin, double end);
Packit 352660
Packit 352660
FcPublic FcRange *
Packit 352660
FcRangeCreateInteger (FcChar32 begin, FcChar32 end);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcRangeDestroy (FcRange *range);
Packit 352660
Packit 352660
FcPublic FcRange *
Packit 352660
FcRangeCopy (const FcRange *r);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcRangeGetDouble(const FcRange *range, double *begin, double *end);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcPatternIterStart (const FcPattern *pat, FcPatternIter *iter);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternIterNext (const FcPattern *pat, FcPatternIter *iter);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternIterEqual (const FcPattern *p1, FcPatternIter *i1,
Packit 352660
		    const FcPattern *p2, FcPatternIter *i2);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternFindIter (const FcPattern *pat, FcPatternIter *iter, const char *object);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcPatternIterIsValid (const FcPattern *pat, FcPatternIter *iter);
Packit 352660
Packit 352660
FcPublic const char *
Packit 352660
FcPatternIterGetObject (const FcPattern *pat, FcPatternIter *iter);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcPatternIterValueCount (const FcPattern *pat, FcPatternIter *iter);
Packit 352660
Packit 352660
FcPublic FcResult
Packit 352660
FcPatternIterGetValue (const FcPattern *pat, FcPatternIter *iter, int id, FcValue *v, FcValueBinding *b);
Packit 352660
Packit 352660
/* fcweight.c */
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcWeightFromOpenType (int ot_weight);
Packit 352660
Packit 352660
FcPublic double
Packit 352660
FcWeightFromOpenTypeDouble (double ot_weight);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcWeightToOpenType (int fc_weight);
Packit 352660
Packit 352660
FcPublic double
Packit 352660
FcWeightToOpenTypeDouble (double fc_weight);
Packit 352660
Packit 352660
/* fcstr.c */
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrCopy (const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrCopyFilename (const FcChar8 *s);
Packit 352660
    
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrPlus (const FcChar8 *s1, const FcChar8 *s2);
Packit 352660
    
Packit 352660
FcPublic void
Packit 352660
FcStrFree (FcChar8 *s);
Packit 352660
Packit 352660
/* These are ASCII only, suitable only for pattern element names */
Packit 352660
#define FcIsUpper(c)	((0101 <= (c) && (c) <= 0132))
Packit 352660
#define FcIsLower(c)	((0141 <= (c) && (c) <= 0172))
Packit 352660
#define FcToLower(c)	(FcIsUpper(c) ? (c) - 0101 + 0141 : (c))
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrDowncase (const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcStrCmp (const FcChar8 *s1, const FcChar8 *s2);
Packit 352660
Packit 352660
FcPublic const FcChar8 *
Packit 352660
FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
Packit 352660
Packit 352660
FcPublic const FcChar8 *
Packit 352660
FcStrStr (const FcChar8 *s1, const FcChar8 *s2);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcUtf8ToUcs4 (const FcChar8 *src_orig,
Packit 352660
	      FcChar32	    *dst,
Packit 352660
	      int	    len);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcUtf8Len (const FcChar8    *string,
Packit 352660
	   int		    len,
Packit 352660
	   int		    *nchar,
Packit 352660
	   int		    *wchar);
Packit 352660
Packit 352660
#define FC_UTF8_MAX_LEN	6
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcUcs4ToUtf8 (FcChar32	ucs4,
Packit 352660
	      FcChar8	dest[FC_UTF8_MAX_LEN]);
Packit 352660
Packit 352660
FcPublic int
Packit 352660
FcUtf16ToUcs4 (const FcChar8	*src_orig,
Packit 352660
	       FcEndian		endian,
Packit 352660
	       FcChar32		*dst,
Packit 352660
	       int		len);	    /* in bytes */
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcUtf16Len (const FcChar8   *string,
Packit 352660
	    FcEndian	    endian,
Packit 352660
	    int		    len,	    /* in bytes */
Packit 352660
	    int		    *nchar,
Packit 352660
	    int		    *wchar);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrDirname (const FcChar8 *file);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrBasename (const FcChar8 *file);
Packit 352660
Packit 352660
FcPublic FcStrSet *
Packit 352660
FcStrSetCreate (void);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcStrSetMember (FcStrSet *set, const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcStrSetEqual (FcStrSet *sa, FcStrSet *sb);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcStrSetAdd (FcStrSet *set, const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcStrSetDel (FcStrSet *set, const FcChar8 *s);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcStrSetDestroy (FcStrSet *set);
Packit 352660
Packit 352660
FcPublic FcStrList *
Packit 352660
FcStrListCreate (FcStrSet *set);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcStrListFirst (FcStrList *list);
Packit 352660
Packit 352660
FcPublic FcChar8 *
Packit 352660
FcStrListNext (FcStrList *list);
Packit 352660
Packit 352660
FcPublic void
Packit 352660
FcStrListDone (FcStrList *list);
Packit 352660
Packit 352660
/* fcxml.c */
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigParseAndLoad (FcConfig *config, const FcChar8 *file, FcBool complain);
Packit 352660
Packit 352660
FcPublic FcBool
Packit 352660
FcConfigParseAndLoadFromMemory (FcConfig       *config,
Packit 352660
				const FcChar8  *buffer,
Packit 352660
				FcBool         complain);
Packit 352660
Packit 352660
_FCFUNCPROTOEND
Packit 352660
Packit 352660
#undef FC_ATTRIBUTE_SENTINEL
Packit 352660
Packit 352660
Packit 352660
#ifndef _FCINT_H_
Packit 352660
Packit 352660
/*
Packit 352660
 * Deprecated functions are placed here to help users fix their code without
Packit 352660
 * digging through documentation
Packit 352660
 */
Packit 352660
 
Packit 352660
#define FcConfigGetRescanInverval   FcConfigGetRescanInverval_REPLACE_BY_FcConfigGetRescanInterval
Packit 352660
#define FcConfigSetRescanInverval   FcConfigSetRescanInverval_REPLACE_BY_FcConfigSetRescanInterval
Packit 352660
Packit 352660
#endif
Packit 352660
Packit 352660
#endif /* _FONTCONFIG_H_ */