/*
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
/*
* fbc_xorg - Edit config file data representations
*/
#ifndef _FBC_XORG_H
#define _FBC_XORG_H
#include <stdio.h> /* NULL */
#include "xf86Parser.h" /* Configuration (sub)section definitions */
#include "fbc.h" /* Common fbconf_xorg(1M) definitions */
/*
* Active (sub)sections associated with the specified frame buffer device
*/
typedef struct {
/*
* Codes representing active configuration (sub)sections or entries
*
* These codes are used to show what type of (sub)section, etc. would
* contain a particular Option entry within the configuration. In
* this context, the codes are selector indices (e.g. switch statement
* values) and are not intended to be ORed together as a bit mask.
*
* These codes can also be used to show which active configuration
* (sub)sections, etc. are to be modified. In this context, the
* codes are flag bits that can be ORed together.
*
* Beyond that, these values are arbitrary.
*/
typedef enum {
/* FBC_ENTRY_Mode = 0x0010 ** ModeLine / Mode-EndMode entry */
} sectn_mask_t;
/*
* Array element describing a config Option entry to be inserted or updated
*/
typedef struct {
/*
* Definitions for command line processing and configuration entries
*/
/*
* Prefix character used to mark pseudo-Option entries
*
* Pseudo-Option entry names (e.g., "#Gamma") are placed in
* the .Option_mods[] array to help detect conflicting
* command line option values and to implement a radio-button
* behavior among related options.
*/
/* -clone */
/* -defaults */
/* -defaultdepth 8|24 */
/* -deflinear true|false */
/* -defoverlay true|false */
/* -deftransparent true|false */
/* -dev <device> */
/* -doublehigh enable|disable */
/* -doublewide enable|disable */
/* -fake8 enable|disable */
/* -file machine|system|<config-path> */
/* -g <gamma-value> */
/* -gfile <gamma-file> */
/* -help */
/* -multisample disable|available|forceon */
/* -offset <xoff> <yoff> */
/* -outputs swapped|direct */
/* -prconf */
/* -predid */
/* -propt */
/* -res ? */
/* -res <video-mode> [nocheck] [noconfirm] [try] [now] */
/* -rscreen enable|disable */
/* -samples 1|4|8|16 */
/* -slave disable|multiview */
/*
* Configuration entries to be modified or inserted
*/
typedef struct {
/*
* Screen section explicit entries (see XF86ConfScreenRec)
*/
/*
* Monitor section explicit entries (see XF86ConfMonitorRec)
*/
/*
* "-res <video_mode>" command line option
*/
/*
* Option entry modification descriptors
*
* This can include descriptors for pseudo-Options. Pseudo
* Options are explicitly named entries, such as "Gamma,"
* that are placed in this array as part of the mechanism to
* detect conflicting entries, such as "Gamma" (-g) and the
* "GFile" Option (-gfile).
*/
/*
* Preferred video mode/resolution for monitor
*
* Case-insensitive "NONE" is accepted as an argument to the -res
* command line option. Later it is translated to uppercase "AUTO"
* and isn't recognized thereafter.
*/
#endif /* _FBC_XORG_H */
/* End of fbc_xorg.h */