1706f2543Smrg/*
2706f2543Smrg *
3706f2543Smrg * Copyright (c) 1997  Metro Link Incorporated
4706f2543Smrg *
5706f2543Smrg * Permission is hereby granted, free of charge, to any person obtaining a
6706f2543Smrg * copy of this software and associated documentation files (the "Software"),
7706f2543Smrg * to deal in the Software without restriction, including without limitation
8706f2543Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9706f2543Smrg * and/or sell copies of the Software, and to permit persons to whom the
10706f2543Smrg * Software is furnished to do so, subject to the following conditions:
11706f2543Smrg *
12706f2543Smrg * The above copyright notice and this permission notice shall be included in
13706f2543Smrg * all copies or substantial portions of the Software.
14706f2543Smrg *
15706f2543Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16706f2543Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17706f2543Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18706f2543Smrg * THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
19706f2543Smrg * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
20706f2543Smrg * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21706f2543Smrg * SOFTWARE.
22706f2543Smrg *
23706f2543Smrg * Except as contained in this notice, the name of the Metro Link shall not be
24706f2543Smrg * used in advertising or otherwise to promote the sale, use or other dealings
25706f2543Smrg * in this Software without prior written authorization from Metro Link.
26706f2543Smrg *
27706f2543Smrg */
28706f2543Smrg/*
29706f2543Smrg * Copyright (c) 1997-2003 by The XFree86 Project, Inc.
30706f2543Smrg *
31706f2543Smrg * Permission is hereby granted, free of charge, to any person obtaining a
32706f2543Smrg * copy of this software and associated documentation files (the "Software"),
33706f2543Smrg * to deal in the Software without restriction, including without limitation
34706f2543Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense,
35706f2543Smrg * and/or sell copies of the Software, and to permit persons to whom the
36706f2543Smrg * Software is furnished to do so, subject to the following conditions:
37706f2543Smrg *
38706f2543Smrg * The above copyright notice and this permission notice shall be included in
39706f2543Smrg * all copies or substantial portions of the Software.
40706f2543Smrg *
41706f2543Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
42706f2543Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
43706f2543Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
44706f2543Smrg * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
45706f2543Smrg * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
46706f2543Smrg * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
47706f2543Smrg * OTHER DEALINGS IN THE SOFTWARE.
48706f2543Smrg *
49706f2543Smrg * Except as contained in this notice, the name of the copyright holder(s)
50706f2543Smrg * and author(s) shall not be used in advertising or otherwise to promote
51706f2543Smrg * the sale, use or other dealings in this Software without prior written
52706f2543Smrg * authorization from the copyright holder(s) and author(s).
53706f2543Smrg */
54706f2543Smrg
55706f2543Smrg
56706f2543Smrg#ifdef HAVE_XORG_CONFIG_H
57706f2543Smrg#include <xorg-config.h>
58706f2543Smrg#endif
59706f2543Smrg
60706f2543Smrg#ifndef _xf86_tokens_h
61706f2543Smrg#define _xf86_tokens_h
62706f2543Smrg
63706f2543Smrg/* Undefine symbols that some OSs might define */
64706f2543Smrg#undef IOBASE
65706f2543Smrg
66706f2543Smrg/*
67706f2543Smrg * Each token should have a unique value regardless of the section
68706f2543Smrg * it is used in.
69706f2543Smrg */
70706f2543Smrg
71706f2543Smrgtypedef enum {
72706f2543Smrg    /* errno-style tokens */
73706f2543Smrg    OBSOLETE_TOKEN	= -5,
74706f2543Smrg    EOF_TOKEN		= -4,
75706f2543Smrg    LOCK_TOKEN		= -3,
76706f2543Smrg    ERROR_TOKEN		= -2,
77706f2543Smrg
78706f2543Smrg    /* value type tokens */
79706f2543Smrg    NUMBER		= 1,
80706f2543Smrg    STRING,
81706f2543Smrg
82706f2543Smrg    /* Tokens that can appear in many sections */
83706f2543Smrg    SECTION,
84706f2543Smrg    SUBSECTION,
85706f2543Smrg    ENDSECTION,
86706f2543Smrg    ENDSUBSECTION,
87706f2543Smrg    IDENTIFIER,
88706f2543Smrg    VENDOR,
89706f2543Smrg    DASH,
90706f2543Smrg    COMMA,
91706f2543Smrg    OPTION,
92706f2543Smrg    COMMENT,
93706f2543Smrg
94706f2543Smrg    /* Frequency units */
95706f2543Smrg    HRZ,
96706f2543Smrg    KHZ,
97706f2543Smrg    MHZ,
98706f2543Smrg
99706f2543Smrg    /* File tokens */
100706f2543Smrg    FONTPATH,
101706f2543Smrg    MODULEPATH,
102706f2543Smrg    LOGFILEPATH,
103706f2543Smrg    XKBDIR,
104706f2543Smrg
105706f2543Smrg    /* Server Flag tokens.  These are deprecated in favour of generic Options */
106706f2543Smrg    NOTRAPSIGNALS,
107706f2543Smrg    DONTZAP,
108706f2543Smrg    DONTZOOM,
109706f2543Smrg    DISABLEVIDMODE,
110706f2543Smrg    ALLOWNONLOCAL,
111706f2543Smrg    DISABLEMODINDEV,
112706f2543Smrg    MODINDEVALLOWNONLOCAL,
113706f2543Smrg    ALLOWMOUSEOPENFAIL,
114706f2543Smrg    BLANKTIME,
115706f2543Smrg    STANDBYTIME,
116706f2543Smrg    SUSPENDTIME,
117706f2543Smrg    OFFTIME,
118706f2543Smrg    DEFAULTLAYOUT,
119706f2543Smrg
120706f2543Smrg    /* Monitor tokens */
121706f2543Smrg    MODEL,
122706f2543Smrg    MODELINE,
123706f2543Smrg    DISPLAYSIZE,
124706f2543Smrg    HORIZSYNC,
125706f2543Smrg    VERTREFRESH,
126706f2543Smrg    MODE,
127706f2543Smrg    GAMMA,
128706f2543Smrg    USEMODES,
129706f2543Smrg
130706f2543Smrg    /* Modes tokens */
131706f2543Smrg    /* no new ones */
132706f2543Smrg
133706f2543Smrg    /* Mode tokens */
134706f2543Smrg    DOTCLOCK,
135706f2543Smrg    HTIMINGS,
136706f2543Smrg    VTIMINGS,
137706f2543Smrg    FLAGS,
138706f2543Smrg    HSKEW,
139706f2543Smrg    BCAST,
140706f2543Smrg    VSCAN,
141706f2543Smrg    ENDMODE,
142706f2543Smrg
143706f2543Smrg    /* Screen tokens */
144706f2543Smrg    OBSDRIVER,
145706f2543Smrg    MDEVICE,
146706f2543Smrg    MONITOR,
147706f2543Smrg    SCREENNO,
148706f2543Smrg    DEFAULTDEPTH,
149706f2543Smrg    DEFAULTBPP,
150706f2543Smrg    DEFAULTFBBPP,
151706f2543Smrg
152706f2543Smrg    /* VideoAdaptor tokens */
153706f2543Smrg    VIDEOADAPTOR,
154706f2543Smrg
155706f2543Smrg    /* Mode timing tokens */
156706f2543Smrg    TT_INTERLACE,
157706f2543Smrg    TT_PHSYNC,
158706f2543Smrg    TT_NHSYNC,
159706f2543Smrg    TT_PVSYNC,
160706f2543Smrg    TT_NVSYNC,
161706f2543Smrg    TT_CSYNC,
162706f2543Smrg    TT_PCSYNC,
163706f2543Smrg    TT_NCSYNC,
164706f2543Smrg    TT_DBLSCAN,
165706f2543Smrg    TT_HSKEW,
166706f2543Smrg    TT_BCAST,
167706f2543Smrg    TT_VSCAN,
168706f2543Smrg
169706f2543Smrg    /* Module tokens */
170706f2543Smrg    LOAD,
171706f2543Smrg    LOAD_DRIVER,
172706f2543Smrg    DISABLE,
173706f2543Smrg
174706f2543Smrg    /* Device tokens */
175706f2543Smrg    DRIVER,
176706f2543Smrg    CHIPSET,
177706f2543Smrg    CLOCKS,
178706f2543Smrg    VIDEORAM,
179706f2543Smrg    BOARD,
180706f2543Smrg    IOBASE,
181706f2543Smrg    RAMDAC,
182706f2543Smrg    DACSPEED,
183706f2543Smrg    BIOSBASE,
184706f2543Smrg    MEMBASE,
185706f2543Smrg    CLOCKCHIP,
186706f2543Smrg    CHIPID,
187706f2543Smrg    CHIPREV,
188706f2543Smrg    CARD,
189706f2543Smrg    BUSID,
190706f2543Smrg    TEXTCLOCKFRQ,
191706f2543Smrg    IRQ,
192706f2543Smrg
193706f2543Smrg    /* Keyboard tokens */
194706f2543Smrg    AUTOREPEAT,
195706f2543Smrg    XLEDS,
196706f2543Smrg    KPROTOCOL,
197706f2543Smrg    XKBKEYMAP,
198706f2543Smrg    XKBCOMPAT,
199706f2543Smrg    XKBTYPES,
200706f2543Smrg    XKBKEYCODES,
201706f2543Smrg    XKBGEOMETRY,
202706f2543Smrg    XKBSYMBOLS,
203706f2543Smrg    XKBDISABLE,
204706f2543Smrg    PANIX106,
205706f2543Smrg    XKBRULES,
206706f2543Smrg    XKBMODEL,
207706f2543Smrg    XKBLAYOUT,
208706f2543Smrg    XKBVARIANT,
209706f2543Smrg    XKBOPTIONS,
210706f2543Smrg    /* The next two have become ServerFlags options */
211706f2543Smrg    VTSYSREQ,
212706f2543Smrg    /* Obsolete keyboard tokens */
213706f2543Smrg    SERVERNUM,
214706f2543Smrg    LEFTALT,
215706f2543Smrg    RIGHTALT,
216706f2543Smrg    SCROLLLOCK_TOK,
217706f2543Smrg    RIGHTCTL,
218706f2543Smrg    /* arguments for the above obsolete tokens */
219706f2543Smrg    CONF_KM_META,
220706f2543Smrg    CONF_KM_COMPOSE,
221706f2543Smrg    CONF_KM_MODESHIFT,
222706f2543Smrg    CONF_KM_MODELOCK,
223706f2543Smrg    CONF_KM_SCROLLLOCK,
224706f2543Smrg    CONF_KM_CONTROL,
225706f2543Smrg
226706f2543Smrg    /* Pointer tokens */
227706f2543Smrg    EMULATE3,
228706f2543Smrg    BAUDRATE,
229706f2543Smrg    SAMPLERATE,
230706f2543Smrg    PRESOLUTION,
231706f2543Smrg    CLEARDTR,
232706f2543Smrg    CLEARRTS,
233706f2543Smrg    CHORDMIDDLE,
234706f2543Smrg    PROTOCOL,
235706f2543Smrg    PDEVICE,
236706f2543Smrg    EM3TIMEOUT,
237706f2543Smrg    DEVICE_NAME,
238706f2543Smrg    ALWAYSCORE,
239706f2543Smrg    PBUTTONS,
240706f2543Smrg    ZAXISMAPPING,
241706f2543Smrg
242706f2543Smrg    /* Pointer Z axis mapping tokens */
243706f2543Smrg    XAXIS,
244706f2543Smrg    YAXIS,
245706f2543Smrg
246706f2543Smrg    /* Display tokens */
247706f2543Smrg    MODES,
248706f2543Smrg    VIEWPORT,
249706f2543Smrg    VIRTUAL,
250706f2543Smrg    VISUAL,
251706f2543Smrg    BLACK_TOK,
252706f2543Smrg    WHITE_TOK,
253706f2543Smrg    DEPTH,
254706f2543Smrg    BPP,
255706f2543Smrg    WEIGHT,
256706f2543Smrg
257706f2543Smrg    /* Layout Tokens */
258706f2543Smrg    SCREEN,
259706f2543Smrg    INACTIVE,
260706f2543Smrg    INPUTDEVICE,
261706f2543Smrg
262706f2543Smrg    /* Adjaceny Tokens */
263706f2543Smrg    RIGHTOF,
264706f2543Smrg    LEFTOF,
265706f2543Smrg    ABOVE,
266706f2543Smrg    BELOW,
267706f2543Smrg    RELATIVE,
268706f2543Smrg    ABSOLUTE,
269706f2543Smrg
270706f2543Smrg    /* Vendor Tokens */
271706f2543Smrg    VENDORNAME,
272706f2543Smrg
273706f2543Smrg    /* DRI Tokens */
274706f2543Smrg    GROUP,
275706f2543Smrg
276706f2543Smrg    /* InputClass Tokens */
277706f2543Smrg    MATCH_PRODUCT,
278706f2543Smrg    MATCH_VENDOR,
279706f2543Smrg    MATCH_DEVICE_PATH,
280706f2543Smrg    MATCH_OS,
281706f2543Smrg    MATCH_PNPID,
282706f2543Smrg    MATCH_USBID,
283706f2543Smrg    MATCH_DRIVER,
284706f2543Smrg    MATCH_TAG,
285706f2543Smrg    MATCH_IS_KEYBOARD,
286706f2543Smrg    MATCH_IS_POINTER,
287706f2543Smrg    MATCH_IS_JOYSTICK,
288706f2543Smrg    MATCH_IS_TABLET,
289706f2543Smrg    MATCH_IS_TOUCHPAD,
290706f2543Smrg    MATCH_IS_TOUCHSCREEN
291706f2543Smrg} ParserTokens;
292706f2543Smrg
293706f2543Smrg#endif /* _xf86_tokens_h */
294