1706f2543Smrg/* 2706f2543Smrg * Copyright (c) 1997-2001 by The XFree86 Project, Inc. 3706f2543Smrg * 4706f2543Smrg * Permission is hereby granted, free of charge, to any person obtaining a 5706f2543Smrg * copy of this software and associated documentation files (the "Software"), 6706f2543Smrg * to deal in the Software without restriction, including without limitation 7706f2543Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8706f2543Smrg * and/or sell copies of the Software, and to permit persons to whom the 9706f2543Smrg * Software is furnished to do so, subject to the following conditions: 10706f2543Smrg * 11706f2543Smrg * The above copyright notice and this permission notice shall be included in 12706f2543Smrg * all copies or substantial portions of the Software. 13706f2543Smrg * 14706f2543Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15706f2543Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16706f2543Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17706f2543Smrg * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 18706f2543Smrg * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19706f2543Smrg * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20706f2543Smrg * OTHER DEALINGS IN THE SOFTWARE. 21706f2543Smrg * 22706f2543Smrg * Except as contained in this notice, the name of the copyright holder(s) 23706f2543Smrg * and author(s) shall not be used in advertising or otherwise to promote 24706f2543Smrg * the sale, use or other dealings in this Software without prior written 25706f2543Smrg * authorization from the copyright holder(s) and author(s). 26706f2543Smrg */ 27706f2543Smrg 28706f2543Smrg/* Private procs. Public procs are in xf86Parser.h and xf86Optrec.h */ 29706f2543Smrg 30706f2543Smrg/* exported functions are/were used by the X Server, and need to be 31706f2543Smrg * made public when installing libxf86config */ 32706f2543Smrg 33706f2543Smrg/* Device.c */ 34706f2543SmrgXF86ConfDevicePtr xf86parseDeviceSection(void); 35706f2543Smrgvoid xf86printDeviceSection(FILE *cf, XF86ConfDevicePtr ptr); 36706f2543Smrgvoid xf86freeDeviceList(XF86ConfDevicePtr ptr); 37706f2543Smrgint xf86validateDevice(XF86ConfigPtr p); 38706f2543Smrg/* Files.c */ 39706f2543SmrgXF86ConfFilesPtr xf86parseFilesSection(void); 40706f2543Smrgvoid xf86printFileSection(FILE *cf, XF86ConfFilesPtr ptr); 41706f2543Smrgvoid xf86freeFiles(XF86ConfFilesPtr p); 42706f2543Smrg/* Flags.c */ 43706f2543SmrgXF86ConfFlagsPtr xf86parseFlagsSection(void); 44706f2543Smrgvoid xf86printServerFlagsSection(FILE *f, XF86ConfFlagsPtr flags); 45706f2543Smrgvoid xf86freeFlags(XF86ConfFlagsPtr flags); 46706f2543Smrg/* Input.c */ 47706f2543SmrgXF86ConfInputPtr xf86parseInputSection(void); 48706f2543Smrgvoid xf86printInputSection(FILE *f, XF86ConfInputPtr ptr); 49706f2543Smrgvoid xf86freeInputList(XF86ConfInputPtr ptr); 50706f2543Smrgint xf86validateInput (XF86ConfigPtr p); 51706f2543Smrg/* InputClass.c */ 52706f2543SmrgXF86ConfInputClassPtr xf86parseInputClassSection(void); 53706f2543Smrgvoid xf86printInputClassSection(FILE *f, XF86ConfInputClassPtr ptr); 54706f2543Smrgvoid xf86freeInputClassList(XF86ConfInputClassPtr ptr); 55706f2543Smrg/* Layout.c */ 56706f2543SmrgXF86ConfLayoutPtr xf86parseLayoutSection(void); 57706f2543Smrgvoid xf86printLayoutSection(FILE *cf, XF86ConfLayoutPtr ptr); 58706f2543Smrgvoid xf86freeLayoutList(XF86ConfLayoutPtr ptr); 59706f2543Smrgint xf86validateLayout(XF86ConfigPtr p); 60706f2543Smrg/* Module.c */ 61706f2543SmrgXF86ConfModulePtr xf86parseModuleSection(void); 62706f2543Smrgvoid xf86printModuleSection(FILE *cf, XF86ConfModulePtr ptr); 63706f2543Smrgextern _X_EXPORT XF86LoadPtr xf86addNewLoadDirective(XF86LoadPtr head, char *name, int type, XF86OptionPtr opts); 64706f2543Smrgvoid xf86freeModules(XF86ConfModulePtr ptr); 65706f2543Smrg/* Monitor.c */ 66706f2543SmrgXF86ConfMonitorPtr xf86parseMonitorSection(void); 67706f2543SmrgXF86ConfModesPtr xf86parseModesSection(void); 68706f2543Smrgvoid xf86printMonitorSection(FILE *cf, XF86ConfMonitorPtr ptr); 69706f2543Smrgvoid xf86printModesSection(FILE *cf, XF86ConfModesPtr ptr); 70706f2543Smrgextern _X_EXPORT void xf86freeMonitorList(XF86ConfMonitorPtr ptr); 71706f2543Smrgvoid xf86freeModesList(XF86ConfModesPtr ptr); 72706f2543Smrgint xf86validateMonitor(XF86ConfigPtr p, XF86ConfScreenPtr screen); 73706f2543Smrg/* Pointer.c */ 74706f2543SmrgXF86ConfInputPtr xf86parsePointerSection(void); 75706f2543Smrg/* Screen.c */ 76706f2543SmrgXF86ConfScreenPtr xf86parseScreenSection(void); 77706f2543Smrgvoid xf86printScreenSection(FILE *cf, XF86ConfScreenPtr ptr); 78706f2543Smrgextern _X_EXPORT void xf86freeScreenList(XF86ConfScreenPtr ptr); 79706f2543Smrgvoid xf86freeAdaptorLinkList(XF86ConfAdaptorLinkPtr ptr); 80706f2543Smrgvoid xf86freeDisplayList(XF86ConfDisplayPtr ptr); 81706f2543Smrgvoid xf86freeModeList(XF86ModePtr ptr); 82706f2543Smrgint xf86validateScreen(XF86ConfigPtr p); 83706f2543Smrg/* Vendor.c */ 84706f2543SmrgXF86ConfVendorPtr xf86parseVendorSection(void); 85706f2543Smrgvoid xf86freeVendorList(XF86ConfVendorPtr p); 86706f2543Smrgvoid xf86printVendorSection(FILE * cf, XF86ConfVendorPtr ptr); 87706f2543Smrgvoid xf86freeVendorSubList (XF86ConfVendSubPtr ptr); 88706f2543Smrg/* Video.c */ 89706f2543SmrgXF86ConfVideoAdaptorPtr xf86parseVideoAdaptorSection(void); 90706f2543Smrgvoid xf86printVideoAdaptorSection(FILE *cf, XF86ConfVideoAdaptorPtr ptr); 91706f2543Smrgvoid xf86freeVideoAdaptorList(XF86ConfVideoAdaptorPtr ptr); 92706f2543Smrg/* scan.c */ 93706f2543Smrgint xf86getToken(xf86ConfigSymTabRec *tab); 94706f2543Smrgint xf86getSubToken(char **comment); 95706f2543Smrgint xf86getSubTokenWithTab(char **comment, xf86ConfigSymTabRec *tab); 96706f2543Smrgvoid xf86unGetToken(int token); 97706f2543Smrgchar *xf86tokenString(void); 98706f2543Smrgvoid xf86parseError(char *format, ...); 99706f2543Smrgvoid xf86validationError(char *format, ...); 100706f2543Smrgvoid xf86setSection(char *section); 101706f2543Smrgint xf86getStringToken(xf86ConfigSymTabRec *tab); 102706f2543Smrg/* write.c */ 103706f2543Smrg/* DRI.c */ 104706f2543SmrgXF86ConfDRIPtr xf86parseDRISection (void); 105706f2543Smrgvoid xf86printDRISection (FILE * cf, XF86ConfDRIPtr ptr); 106706f2543Smrgvoid xf86freeDRI (XF86ConfDRIPtr ptr); 107706f2543Smrg/* Extensions.c */ 108706f2543SmrgXF86ConfExtensionsPtr xf86parseExtensionsSection (void); 109706f2543Smrgvoid xf86printExtensionsSection (FILE * cf, XF86ConfExtensionsPtr ptr); 110706f2543Smrgvoid xf86freeExtensions (XF86ConfExtensionsPtr ptr); 111706f2543Smrg 112706f2543Smrg#ifdef HAVE_XORG_CONFIG_H 113706f2543Smrg#include <xorg-config.h> 114706f2543Smrg#endif 115706f2543Smrg 116706f2543Smrg#ifndef IN_XSERVER 117706f2543Smrg/* Externally provided functions */ 118706f2543Smrgvoid ErrorF(const char *f, ...); 119706f2543Smrgvoid VErrorF(const char *f, va_list args); 120706f2543Smrg#endif 121