libxfontint.h revision a96d7823
1a96d7823Smrg/*
2a96d7823Smrg * Copyright © 2015 Keith Packard
3a96d7823Smrg *
4a96d7823Smrg * Permission to use, copy, modify, distribute, and sell this software and its
5a96d7823Smrg * documentation for any purpose is hereby granted without fee, provided that
6a96d7823Smrg * the above copyright notice appear in all copies and that both that copyright
7a96d7823Smrg * notice and this permission notice appear in supporting documentation, and
8a96d7823Smrg * that the name of the copyright holders not be used in advertising or
9a96d7823Smrg * publicity pertaining to distribution of the software without specific,
10a96d7823Smrg * written prior permission.  The copyright holders make no representations
11a96d7823Smrg * about the suitability of this software for any purpose.  It is provided "as
12a96d7823Smrg * is" without express or implied warranty.
13a96d7823Smrg *
14a96d7823Smrg * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
15a96d7823Smrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
16a96d7823Smrg * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
17a96d7823Smrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
18a96d7823Smrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
19a96d7823Smrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
20a96d7823Smrg * OF THIS SOFTWARE.
21a96d7823Smrg */
22a96d7823Smrg
23a96d7823Smrg#ifndef _LIBXFONTINT_H_
24a96d7823Smrg#define _LIBXFONTINT_H_
25a96d7823Smrg
26a96d7823Smrg#include <X11/fonts/FSproto.h>
27a96d7823Smrg
28a96d7823Smrg#define client_auth_generation __libxfont__client_auth_generation
29a96d7823Smrg#define ClientSignal __libxfont__ClientSignal
30a96d7823Smrg#define DeleteFontClientID __libxfont__DeleteFontClientID
31a96d7823Smrg#define ErrorF __libxfont__ErrorF
32a96d7823Smrg#define find_old_font __libxfont__find_old_font
33a96d7823Smrg#define GetClientResolutions __libxfont__GetClientResolutions
34a96d7823Smrg#define GetDefaultPointSize __libxfont__GetDefaultPointSize
35a96d7823Smrg#define GetNewFontClientID __libxfont__GetNewFontClientID
36a96d7823Smrg#define GetTimeInMillis  __libxfont__GetTimeInMillis
37a96d7823Smrg#define init_fs_handlers __libxfont__init_fs_handlers
38a96d7823Smrg#define remove_fs_handlers __libxfont__remove_fs_handlers
39a96d7823Smrg#define __GetServerClient __libxfont____GetServerClient
40a96d7823Smrg#define set_font_authorizations __libxfont__set_font_authorizations
41a96d7823Smrg#define StoreFontClientFont __libxfont__StoreFontClientFont
42a96d7823Smrg#define MakeAtom __libxfont__MakeAtom
43a96d7823Smrg#define ValidAtom __libxfont__ValidAtom
44a96d7823Smrg#define NameForAtom __libxfont__NameForAtom
45a96d7823Smrg
46a96d7823Smrg#define add_fs_fd __libxfont_add_fs_fd
47a96d7823Smrg#define remove_fs_fd __libxfont_remove_fs_fd
48a96d7823Smrg#define adjust_fs_wait_for_delay __libxfont_adjust_fs_wait_for_delay
49a96d7823Smrg
50a96d7823Smrg#include	<X11/fonts/FS.h>
51a96d7823Smrg#include	<X11/fonts/FSproto.h>
52a96d7823Smrg#include	<X11/X.h>
53a96d7823Smrg#include	<X11/Xos.h>
54a96d7823Smrg#include	<X11/fonts/fontmisc.h>
55a96d7823Smrg#include	<X11/fonts/fontstruct.h>
56a96d7823Smrg#include	<X11/fonts/fontutil.h>
57a96d7823Smrg#include	<X11/fonts/fontproto.h>
58a96d7823Smrg#include	<errno.h>
59a96d7823Smrg#include	<limits.h>
60a96d7823Smrg#include	<stdint.h>
61a96d7823Smrg
62a96d7823Smrg#include <X11/fonts/libxfont2.h>
63a96d7823Smrg
64a96d7823Smrg#ifndef LIBXFONT_SKIP_ERRORF
65a96d7823Smrgvoid
66a96d7823SmrgErrorF(const char *f, ...)  _X_ATTRIBUTE_PRINTF(1,2);
67a96d7823Smrg#endif
68a96d7823Smrg
69a96d7823SmrgFontPtr
70a96d7823Smrgfind_old_font(FSID id);
71a96d7823Smrg
72a96d7823Smrgunsigned long
73a96d7823SmrgGetTimeInMillis (void);
74a96d7823Smrg
75a96d7823Smrgint
76a96d7823Smrgregister_fpe_funcs(const xfont2_fpe_funcs_rec *funcs);
77a96d7823Smrg
78a96d7823Smrgvoid *
79a96d7823Smrg__GetServerClient(void);
80a96d7823Smrg
81a96d7823Smrgint
82a96d7823Smrgset_font_authorizations(char **authorizations, int *authlen, ClientPtr client);
83a96d7823Smrg
84a96d7823Smrgunsigned long
85a96d7823Smrg__GetServerGeneration (void);
86a96d7823Smrg
87a96d7823Smrgint add_fs_fd(int fd, FontFdHandlerProcPtr handler, void *data);
88a96d7823Smrg
89a96d7823Smrgvoid remove_fs_fd(int fd);
90a96d7823Smrg
91a96d7823Smrgvoid adjust_fs_wait_for_delay(void *wt, unsigned long newdelay);
92a96d7823Smrg
93a96d7823Smrgint
94a96d7823Smrginit_fs_handlers2(FontPathElementPtr fpe,
95a96d7823Smrg		  FontBlockHandlerProcPtr block_handler);
96a96d7823Smrg
97a96d7823Smrgvoid
98a96d7823Smrgremove_fs_handlers2(FontPathElementPtr fpe,
99a96d7823Smrg		    FontBlockHandlerProcPtr blockHandler,
100a96d7823Smrg		    Bool all);
101a96d7823Smrg
102a96d7823SmrgAtom
103a96d7823Smrg__libxfont_internal__MakeAtom(const char *string, unsigned len, int makeit);
104a96d7823Smrg
105a96d7823Smrgint
106a96d7823Smrg__libxfont_internal__ValidAtom(Atom atom);
107a96d7823Smrg
108a96d7823Smrgconst char *
109a96d7823Smrg__libxfont_internal__NameForAtom(Atom atom);
110a96d7823Smrg
111a96d7823Smrgint
112a96d7823SmrgCheckFSFormat(fsBitmapFormat format,
113a96d7823Smrg	      fsBitmapFormatMask fmask,
114a96d7823Smrg	      int *bit_order,
115a96d7823Smrg	      int *byte_order,
116a96d7823Smrg	      int *scan,
117a96d7823Smrg	      int *glyph,
118a96d7823Smrg	      int *image);
119a96d7823Smrg
120a96d7823Smrgint
121a96d7823SmrgFontCouldBeTerminal(FontInfoPtr);
122a96d7823Smrg
123a96d7823Smrgvoid
124a96d7823SmrgFontComputeInfoAccelerators(FontInfoPtr);
125a96d7823Smrg
126a96d7823Smrgint
127a96d7823Smrgadd_range (fsRange *newrange, int *nranges, fsRange **range,
128a96d7823Smrg	   Bool charset_subset);
129a96d7823Smrg
130a96d7823Smrg#endif /* _LIBXFONTINT_H_ */
131