6 * descriptions for mapping dvi names to
7 * font indexes and back. Dvi fonts are all
8 * 256 elements (actually only 256-32 are usable).
10 * The encoding names are taken from X -
11 * case insensitive, a dash separating the
12 * CharSetRegistry from the CharSetEncoding
15 # define DVI_MAX_SYNONYMS 10
16 # define DVI_MAP_SIZE 256
17 # define DVI_HASH_SIZE 256
19 typedef struct _dviCharNameHash
{
20 struct _dviCharNameHash
*next
;
25 typedef struct _dviCharNameMap
{
28 const char *dvi_names
[DVI_MAP_SIZE
][DVI_MAX_SYNONYMS
];
29 DviCharNameHash
*buckets
[DVI_HASH_SIZE
];
32 DviCharNameMap
*DviFindMap (char *);
33 void DviRegisterMap (DviCharNameMap
*);
35 char *DviCharName (DviCharNameMap
*, int, int);
37 #define DviCharName(map,index,synonym) ((map)->dvi_names[index][synonym])
39 int DviCharIndex (DviCharNameMap
*, const char *);