ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

bdflib.c File Reference
#include <ft2build.h>
#include "bdf.h"
#include "bdferror.h"

Go to the source code of this file.

Data Structures

struct  _bdf_list_t
struct  _bdf_parse_t

Defines

#define FT_COMPONENT   trace_bdflib
#define INITIAL_HT_SIZE   241
#define setsbit(m, cc)   ( m[(FT_Byte)(cc) >> 3] |= (FT_Byte)( 1 << ( (cc) & 7 ) ) )
#define sbitset(m, cc)   ( m[(FT_Byte)(cc) >> 3] & ( 1 << ( (cc) & 7 ) ) )
#define NO_SKIP   256 /* this value cannot be stored in a 'char' */
#define isdigok(m, d)   (m[(d) >> 3] & ( 1 << ( (d) & 7 ) ) )
#define _BDF_START   0x0001
#define _BDF_FONT_NAME   0x0002
#define _BDF_SIZE   0x0004
#define _BDF_FONT_BBX   0x0008
#define _BDF_PROPS   0x0010
#define _BDF_GLYPHS   0x0020
#define _BDF_GLYPH   0x0040
#define _BDF_ENCODING   0x0080
#define _BDF_SWIDTH   0x0100
#define _BDF_DWIDTH   0x0200
#define _BDF_BBX   0x0400
#define _BDF_BITMAP   0x0800
#define _BDF_SWIDTH_ADJ   0x1000
#define _BDF_GLYPH_BITS
#define _BDF_GLYPH_WIDTH_CHECK   0x40000000UL
#define _BDF_GLYPH_HEIGHT_CHECK   0x80000000UL
#define ACMSG1
#define ACMSG2
#define ACMSG3   "Font width != actual width. Old: %hd New: %hd.\n"
#define ACMSG4
#define ACMSG5   "Font ascent != actual ascent. Old: %hd New: %hd.\n"
#define ACMSG6   "Font descent != actual descent. Old: %hd New: %hd.\n"
#define ACMSG7   "Font height != actual height. Old: %hd New: %hd.\n"
#define ACMSG8   "Glyph scalable width (SWIDTH) adjustments made.\n"
#define ACMSG9   "SWIDTH field missing at line %ld. Set automatically.\n"
#define ACMSG10   "DWIDTH field missing at line %ld. Set to glyph width.\n"
#define ACMSG11   "SIZE bits per pixel field adjusted to %hd.\n"
#define ACMSG12   "Duplicate encoding %ld (%s) changed to unencoded.\n"
#define ACMSG13   "Glyph %ld extra rows removed.\n"
#define ACMSG14   "Glyph %ld extra columns removed.\n"
#define ACMSG15   "Incorrect glyph count: %ld indicated but %ld found.\n"
#define ERRMSG1   "[line %ld] Missing \"%s\" line.\n"
#define ERRMSG2   "[line %ld] Font header corrupted or missing fields.\n"
#define ERRMSG3   "[line %ld] Font glyphs corrupted or missing fields.\n"
#define ERRMSG4   "[line %ld] BBX too big.\n"

Typedefs

typedef void(* hash_free_func )(hashnode node)
typedef FT_Error(* _bdf_line_func_t )(char *line, unsigned long linelen, unsigned long lineno, void *call_data, void *client_data)

Functions

static hashnode * hash_bucket (const char *key, hashtable *ht)
static FT_Error hash_rehash (hashtable *ht, FT_Memory memory)
static FT_Error hash_init (hashtable *ht, FT_Memory memory)
static void hash_free (hashtable *ht, FT_Memory memory)
static FT_Error hash_insert (char *key, size_t data, hashtable *ht, FT_Memory memory)
static hashnode hash_lookup (const char *key, hashtable *ht)
static void _bdf_list_init (_bdf_list_t *list, FT_Memory memory)
static void _bdf_list_done (_bdf_list_t *list)
static FT_Error _bdf_list_ensure (_bdf_list_t *list, unsigned long num_items)
static void _bdf_list_shift (_bdf_list_t *list, unsigned long n)
static char_bdf_list_join (_bdf_list_t *list, int c, unsigned long *alen)
static FT_Error _bdf_list_split (_bdf_list_t *list, char *separators, char *line, unsigned long linelen)
static FT_Error _bdf_readstream (FT_Stream stream, _bdf_line_func_t callback, void *client_data, unsigned long *lno)
static unsigned long _bdf_atoul (char *s, char **end, int base)
static long _bdf_atol (char *s, char **end, int base)
static short _bdf_atos (char *s, char **end, int base)
static int by_encoding (const void *a, const void *b)
static FT_Error bdf_create_property (char *name, int format, bdf_font_t *font)
 bdf_get_property (char *name, bdf_font_t *font)
static FT_Error _bdf_add_comment (bdf_font_t *font, char *comment, unsigned long len)
static FT_Error _bdf_set_default_spacing (bdf_font_t *font, bdf_options_t *opts)
static int _bdf_is_atom (char *line, unsigned long linelen, char **name, char **value, bdf_font_t *font)
static FT_Error _bdf_add_property (bdf_font_t *font, char *name, char *value)
static FT_Error _bdf_parse_glyphs (char *line, unsigned long linelen, unsigned long lineno, void *call_data, void *client_data)
static FT_Error _bdf_parse_properties (char *line, unsigned long linelen, unsigned long lineno, void *call_data, void *client_data)
static FT_Error _bdf_parse_start (char *line, unsigned long linelen, unsigned long lineno, void *call_data, void *client_data)
 bdf_load_font (FT_Stream stream, FT_Memory extmemory, bdf_options_t *opts, bdf_font_t **font)
 bdf_free_font (bdf_font_t *font)
 bdf_get_font_property (bdf_font_t *font, const char *name)

Variables

static const bdf_options_t _bdf_opts
static const bdf_property_t _bdf_properties []
static const unsigned long _num_bdf_properties
static const char empty [1] = { 0 }
static const unsigned char a2i [128]
static const unsigned char odigits [32]
static const unsigned char ddigits [32]
static const unsigned char hdigits [32]
static const unsigned char nibble_mask [8]

Generated on Sat May 26 2012 05:59:11 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.