VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/xorg-server-1.4.2/loader.h@ 78293

Last change on this file since 78293 was 43272, checked in by vboxsync, 12 years ago

Additions/x11: more original X server headers.

  • Property svn:eol-style set to native
File size: 4.4 KB
Line 
1/*
2 * Copyright (c) 2000 by Conectiva S.A. (http://www.conectiva.com)
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 * CONECTIVA LINUX BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
18 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
19 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 * SOFTWARE.
21 *
22 * Except as contained in this notice, the name of Conectiva Linux shall
23 * not be used in advertising or otherwise to promote the sale, use or other
24 * dealings in this Software without prior written authorization from
25 * Conectiva Linux.
26 *
27 * Author: Paulo César Pereira de Andrade <[email protected]>
28 *
29 */
30
31#ifdef USE_MODULES
32#ifndef LOADER_PRIVATE
33#include "config.h"
34#include "stubs.h"
35
36#else
37
38#define IN_LOADER
39
40#include "xf86.h"
41#include "xf86str.h"
42#include "xf86Opt.h"
43#include "xf86Module.h"
44
45#ifndef XINPUT
46#define XINPUT
47#endif
48#include "xf86Xinput.h"
49
50#include <X11/fonts/fontmod.h>
51#include "loaderProcs.h"
52
53#include <sym.h>
54
55void LoaderDefaultFunc(void);
56#endif
57
58#ifndef _xf86cfg_loader_h
59#define _xf86cfg_loader_h
60
61void xf86cfgLoaderInit(void);
62void xf86cfgLoaderInitList(int);
63void xf86cfgLoaderFreeList(void);
64int xf86cfgCheckModule(void);
65
66#ifndef LOADER_PRIVATE
67/* common/xf86Opt.h */
68typedef struct {
69 double freq;
70 int units;
71} OptFrequency;
72
73typedef union {
74 unsigned long num;
75 char * str;
76 double realnum;
77 Bool xbool;
78 OptFrequency freq;
79} ValueUnion;
80
81typedef enum {
82 OPTV_NONE = 0,
83 OPTV_INTEGER,
84 OPTV_STRING, /* a non-empty string */
85 OPTV_ANYSTR, /* Any string, including an empty one */
86 OPTV_REAL,
87 OPTV_BOOLEAN,
88 OPTV_FREQ
89} OptionValueType;
90
91typedef enum {
92 OPTUNITS_HZ = 1,
93 OPTUNITS_KHZ,
94 OPTUNITS_MHZ
95} OptFreqUnits;
96
97typedef struct {
98 int token;
99 const char* name;
100 OptionValueType type;
101 ValueUnion value;
102 Bool found;
103} OptionInfoRec, *OptionInfoPtr;
104
105/* fontmod.h */
106typedef void (*InitFont)(void);
107
108typedef struct {
109 InitFont initFunc;
110 char * name;
111 void *module;
112} FontModule;
113
114extern FontModule *FontModuleList;
115
116typedef struct {
117 int token; /* id of the token */
118 const char * name; /* token name */
119} SymTabRec, *SymTabPtr;
120#endif /* !LOADER_PRIVATE */
121
122typedef enum {
123 NullModule = 0,
124 VideoModule,
125 InputModule,
126 GenericModule,
127 FontRendererModule
128} ModuleType;
129
130typedef struct _xf86cfgModuleOptions {
131 char *name;
132 ModuleType type;
133 OptionInfoPtr option;
134 int vendor;
135 SymTabPtr chipsets;
136 struct _xf86cfgModuleOptions *next;
137} xf86cfgModuleOptions;
138
139extern xf86cfgModuleOptions *module_options;
140
141/* When adding a new code to the LEGEND, also update checkerLegend
142 * in loader.c
143 */
144extern char **checkerLegend;
145extern int *checkerErrors;
146#define CHECKER_OPTIONS_FILE_MISSING 1
147#define CHECKER_OPTION_DESCRIPTION_MISSING 2
148#define CHECKER_LOAD_FAILED 3
149#define CHECKER_RECOGNIZED_AS 4
150#define CHECKER_NO_OPTIONS_AVAILABLE 5
151#define CHECKER_NO_VENDOR_CHIPSET 6
152#define CHECKER_CANNOT_VERIFY_CHIPSET 7
153#define CHECKER_OPTION_UNUSED 8
154#define CHECKER_NOMATCH_CHIPSET_STRINGS 9
155#define CHECKER_CHIPSET_NOT_LISTED 10
156#define CHECKER_CHIPSET_NOT_SUPPORTED 11
157#define CHECKER_CHIPSET_NO_VENDOR 12
158#define CHECKER_NO_CHIPSETS 13
159#define CHECKER_FILE_MODULE_NAME_MISMATCH 14
160
161#define CHECKER_LAST_MESSAGE 14
162
163extern void CheckMsg(int, char*, ...);
164
165#ifndef LOADER_PRIVATE
166int LoaderInitializeOptions(void);
167#endif
168#endif /* USE_MODULES */
169
170#endif /* _xf86cfg_loader_h */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette