xserver

xserver with xephyr scale patch
git clone https://git.neptards.moe/u3shit/xserver.git
Log | Files | Refs | README | LICENSE

xf86Opt.h (8162B)


      1 
      2 /*
      3  * Copyright (c) 1998-2003 by The XFree86 Project, Inc.
      4  *
      5  * Permission is hereby granted, free of charge, to any person obtaining a
      6  * copy of this software and associated documentation files (the "Software"),
      7  * to deal in the Software without restriction, including without limitation
      8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
      9  * and/or sell copies of the Software, and to permit persons to whom the
     10  * Software is furnished to do so, subject to the following conditions:
     11  *
     12  * The above copyright notice and this permission notice shall be included in
     13  * all copies or substantial portions of the Software.
     14  *
     15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     18  * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
     19  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
     20  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
     21  * OTHER DEALINGS IN THE SOFTWARE.
     22  *
     23  * Except as contained in this notice, the name of the copyright holder(s)
     24  * and author(s) shall not be used in advertising or otherwise to promote
     25  * the sale, use or other dealings in this Software without prior written
     26  * authorization from the copyright holder(s) and author(s).
     27  */
     28 
     29 /* Option handling things that ModuleSetup procs can use */
     30 
     31 #ifndef _XF86_OPT_H_
     32 #define _XF86_OPT_H_
     33 #include "xf86Optionstr.h"
     34 
     35 typedef struct {
     36     double freq;
     37     int units;
     38 } OptFrequency;
     39 
     40 typedef union {
     41     unsigned long num;
     42     const char *str;
     43     double realnum;
     44     Bool boolean;
     45     OptFrequency freq;
     46 } ValueUnion;
     47 
     48 typedef enum {
     49     OPTV_NONE = 0,
     50     OPTV_INTEGER,
     51     OPTV_STRING,                /* a non-empty string */
     52     OPTV_ANYSTR,                /* Any string, including an empty one */
     53     OPTV_REAL,
     54     OPTV_BOOLEAN,
     55     OPTV_PERCENT,
     56     OPTV_FREQ
     57 } OptionValueType;
     58 
     59 typedef enum {
     60     OPTUNITS_HZ = 1,
     61     OPTUNITS_KHZ,
     62     OPTUNITS_MHZ
     63 } OptFreqUnits;
     64 
     65 typedef struct {
     66     int token;
     67     const char *name;
     68     OptionValueType type;
     69     ValueUnion value;
     70     Bool found;
     71 } OptionInfoRec, *OptionInfoPtr;
     72 
     73 extern _X_EXPORT int xf86SetIntOption(XF86OptionPtr optlist, const char *name,
     74                                       int deflt);
     75 extern _X_EXPORT double xf86SetRealOption(XF86OptionPtr optlist,
     76                                           const char *name, double deflt);
     77 extern _X_EXPORT char *xf86SetStrOption(XF86OptionPtr optlist, const char *name,
     78                                         const char *deflt);
     79 extern _X_EXPORT int xf86SetBoolOption(XF86OptionPtr list, const char *name,
     80                                        int deflt);
     81 extern _X_EXPORT double xf86SetPercentOption(XF86OptionPtr list,
     82                                              const char *name, double deflt);
     83 extern _X_EXPORT int xf86CheckIntOption(XF86OptionPtr optlist, const char *name,
     84                                         int deflt);
     85 extern _X_EXPORT double xf86CheckRealOption(XF86OptionPtr optlist,
     86                                             const char *name, double deflt);
     87 extern _X_EXPORT char *xf86CheckStrOption(XF86OptionPtr optlist,
     88                                           const char *name, const char *deflt);
     89 extern _X_EXPORT int xf86CheckBoolOption(XF86OptionPtr list, const char *name,
     90                                          int deflt);
     91 extern _X_EXPORT double xf86CheckPercentOption(XF86OptionPtr list,
     92                                                const char *name, double deflt);
     93 extern _X_EXPORT XF86OptionPtr xf86AddNewOption(XF86OptionPtr head,
     94                                                 const char *name,
     95                                                 const char *val);
     96 extern _X_EXPORT XF86OptionPtr xf86NewOption(char *name, char *value);
     97 extern _X_EXPORT XF86OptionPtr xf86NextOption(XF86OptionPtr list);
     98 extern _X_EXPORT XF86OptionPtr xf86OptionListCreate(const char **options,
     99                                                     int count, int used);
    100 extern _X_EXPORT XF86OptionPtr xf86OptionListMerge(XF86OptionPtr head,
    101                                                    XF86OptionPtr tail);
    102 extern _X_EXPORT XF86OptionPtr xf86OptionListDuplicate(XF86OptionPtr list);
    103 extern _X_EXPORT void xf86OptionListFree(XF86OptionPtr opt);
    104 extern _X_EXPORT char *xf86OptionName(XF86OptionPtr opt);
    105 extern _X_EXPORT char *xf86OptionValue(XF86OptionPtr opt);
    106 extern _X_EXPORT void xf86OptionListReport(XF86OptionPtr parm);
    107 extern _X_EXPORT XF86OptionPtr xf86FindOption(XF86OptionPtr options,
    108                                               const char *name);
    109 extern _X_EXPORT const char *xf86FindOptionValue(XF86OptionPtr options,
    110                                                  const char *name);
    111 extern _X_EXPORT void xf86MarkOptionUsed(XF86OptionPtr option);
    112 extern _X_EXPORT void xf86MarkOptionUsedByName(XF86OptionPtr options,
    113                                                const char *name);
    114 extern _X_EXPORT Bool xf86CheckIfOptionUsed(XF86OptionPtr option);
    115 extern _X_EXPORT Bool xf86CheckIfOptionUsedByName(XF86OptionPtr options,
    116                                                   const char *name);
    117 extern _X_EXPORT void xf86ShowUnusedOptions(int scrnIndex,
    118                                             XF86OptionPtr options);
    119 extern _X_EXPORT void xf86ProcessOptions(int scrnIndex, XF86OptionPtr options,
    120                                          OptionInfoPtr optinfo);
    121 extern _X_EXPORT OptionInfoPtr xf86TokenToOptinfo(const OptionInfoRec * table,
    122                                                   int token);
    123 extern _X_EXPORT const char *xf86TokenToOptName(const OptionInfoRec * table,
    124                                                 int token);
    125 extern _X_EXPORT Bool xf86IsOptionSet(const OptionInfoRec * table, int token);
    126 extern _X_EXPORT const char *xf86GetOptValString(const OptionInfoRec * table,
    127                                            int token);
    128 extern _X_EXPORT Bool xf86GetOptValInteger(const OptionInfoRec * table,
    129                                            int token, int *value);
    130 extern _X_EXPORT Bool xf86GetOptValULong(const OptionInfoRec * table, int token,
    131                                          unsigned long *value);
    132 extern _X_EXPORT Bool xf86GetOptValReal(const OptionInfoRec * table, int token,
    133                                         double *value);
    134 extern _X_EXPORT Bool xf86GetOptValFreq(const OptionInfoRec * table, int token,
    135                                         OptFreqUnits expectedUnits,
    136                                         double *value);
    137 extern _X_EXPORT Bool xf86GetOptValBool(const OptionInfoRec * table, int token,
    138                                         Bool *value);
    139 extern _X_EXPORT Bool xf86ReturnOptValBool(const OptionInfoRec * table,
    140                                            int token, Bool def);
    141 extern _X_EXPORT int xf86NameCmp(const char *s1, const char *s2);
    142 extern _X_EXPORT char *xf86NormalizeName(const char *s);
    143 extern _X_EXPORT XF86OptionPtr xf86ReplaceIntOption(XF86OptionPtr optlist,
    144                                                     const char *name,
    145                                                     const int val);
    146 extern _X_EXPORT XF86OptionPtr xf86ReplaceRealOption(XF86OptionPtr optlist,
    147                                                      const char *name,
    148                                                      const double val);
    149 extern _X_EXPORT XF86OptionPtr xf86ReplaceBoolOption(XF86OptionPtr optlist,
    150                                                      const char *name,
    151                                                      const Bool val);
    152 extern _X_EXPORT XF86OptionPtr xf86ReplacePercentOption(XF86OptionPtr optlist,
    153                                                         const char *name,
    154                                                         const double val);
    155 extern _X_EXPORT XF86OptionPtr xf86ReplaceStrOption(XF86OptionPtr optlist,
    156                                                     const char *name,
    157                                                     const char *val);
    158 #endif