head 1.2; access; symbols netbsd-7-2-RELEASE:1.1.1.3 netbsd-7-1-2-RELEASE:1.1.1.3 netbsd-7-1-1-RELEASE:1.1.1.3 netbsd-7-1:1.1.1.3.0.14 netbsd-7-1-RELEASE:1.1.1.3 netbsd-7-1-RC2:1.1.1.3 netbsd-7-1-RC1:1.1.1.3 netbsd-7-0-2-RELEASE:1.1.1.3 netbsd-7-0-1-RELEASE:1.1.1.3 netbsd-7-0:1.1.1.3.0.12 netbsd-7-0-RELEASE:1.1.1.3 netbsd-7-0-RC3:1.1.1.3 netbsd-7-0-RC2:1.1.1.3 netbsd-7-0-RC1:1.1.1.3 netbsd-5-2-3-RELEASE:1.1.1.1 netbsd-5-1-5-RELEASE:1.1.1.1 netbsd-6-0-6-RELEASE:1.1.1.3 netbsd-6-1-5-RELEASE:1.1.1.3 netbsd-7:1.1.1.3.0.10 netbsd-7-base:1.1.1.3 netbsd-6-1-4-RELEASE:1.1.1.3 netbsd-6-0-5-RELEASE:1.1.1.3 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.3 riastradh-drm2:1.1.1.3.0.8 riastradh-drm2-base:1.1.1.3 netbsd-6-1-3-RELEASE:1.1.1.3 netbsd-6-0-4-RELEASE:1.1.1.3 netbsd-5-2-2-RELEASE:1.1.1.1 netbsd-5-1-4-RELEASE:1.1.1.1 netbsd-6-1-2-RELEASE:1.1.1.3 netbsd-6-0-3-RELEASE:1.1.1.3 netbsd-5-2-1-RELEASE:1.1.1.1 netbsd-5-1-3-RELEASE:1.1.1.1 netbsd-6-1-1-RELEASE:1.1.1.3 xorg-server-1-10-6:1.1.1.3 netbsd-6-1:1.1.1.3.0.6 netbsd-6-0-2-RELEASE:1.1.1.3 netbsd-6-1-RELEASE:1.1.1.3 netbsd-6-1-RC4:1.1.1.3 netbsd-6-1-RC3:1.1.1.3 netbsd-6-1-RC2:1.1.1.3 netbsd-6-1-RC1:1.1.1.3 netbsd-5-2:1.1.1.1.0.8 netbsd-6-0-1-RELEASE:1.1.1.3 netbsd-5-2-RELEASE:1.1.1.1 netbsd-5-2-RC1:1.1.1.1 netbsd-6-0:1.1.1.3.0.4 netbsd-6-0-RELEASE:1.1.1.3 netbsd-6-0-RC2:1.1.1.3 netbsd-6-0-RC1:1.1.1.3 netbsd-6:1.1.1.3.0.2 netbsd-6-base:1.1.1.3 netbsd-5-1-2-RELEASE:1.1.1.1 netbsd-5-1-1-RELEASE:1.1.1.1 xorg-server-1-10-3:1.1.1.3 mrg-xorg-server-1-9-5-pre-1-10-3:1.1.1.2 xorg-server-1-9-5:1.1.1.2 xorg-server-1-9-2:1.1.1.2 netbsd-5-1:1.1.1.1.0.6 netbsd-5-1-RELEASE:1.1.1.1 netbsd-5-1-RC4:1.1.1.1 netbsd-5-1-RC3:1.1.1.1 netbsd-5-1-RC2:1.1.1.1 netbsd-5-1-RC1:1.1.1.1 netbsd-5-0-2-RELEASE:1.1.1.1 xorg-server-1-6-5:1.1.1.1 xorg-server-1-6-3:1.1.1.1 netbsd-5-0-1-RELEASE:1.1.1.1 xorg-server-1-6-2:1.1.1.1 xorg-server-1-6-1-901:1.1.1.1 netbsd-5-0:1.1.1.1.0.4 netbsd-5-0-RELEASE:1.1.1.1 netbsd-5-0-RC4:1.1.1.1 netbsd-5-0-RC3:1.1.1.1 netbsd-5-0-RC2:1.1.1.1 netbsd-5-0-RC1:1.1.1.1 netbsd-5:1.1.1.1.0.2 netbsd-5-base:1.1.1.1 xorg-server-1-4-2:1.1.1.1 xorg:1.1.1; locks; strict; comment @# @; 1.2 date 2016.08.11.00.04.28; author mrg; state dead; branches; next 1.1; commitid FQxwnZNPy5ZgOOhz; 1.1 date 2008.07.31.19.50.27; author mrg; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2008.07.31.19.50.27; author mrg; state Exp; branches; next 1.1.1.2; 1.1.1.2 date 2010.11.23.05.21.15; author mrg; state Exp; branches; next 1.1.1.3; 1.1.1.3 date 2011.08.02.06.56.49; author mrg; state Exp; branches; next ; desc @@ 1.2 log @first merge of netbsd changes. not tested yet. @ text @ File Index
Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals

dmxconfig.c File Reference

#include "dmx.h"
#include "dmxinput.h"
#include "dmxconfig.h"
#include "dmxparse.h"
#include "dmxlog.h"
#include "dmxcb.h"
#include "dmxstat.h"
#include "parser.h"

Data Structures

struct  DMXConfigCmdStruct
struct  DMXConfigListStruct

Defines

#define GEN(param, glob, def)

Typedefs

typedef DMXConfigListStruct DMXConfigList
typedef DMXConfigListStructDMXConfigListPtr
typedef DMXConfigCmdStruct DMXConfigCmd
typedef DMXConfigCmdStructDMXConfigCmdPtr

Functions

void dmxConfigStoreDisplay (const char *display)
void dmxConfigStoreInput (const char *input)
void dmxConfigStoreXInput (const char *input)
void dmxConfigStoreFile (const char *file)
void dmxConfigStoreConfig (const char *config)
void dmxConfigConfigure (void)
void dmxConfigSetMaxScreens (void)

Detailed Description

Provides interface for reading DMX configuration files and for combining that information with command-line configuration parameters.

Define Documentation

#define GEN param,
glob,
def   ) 
 

Value:

void dmxConfigSet##glob(const char *param) {                                 \
     if (dmx##glob) free((void *)dmx##glob);                                  \
     dmx##glob = strdup(param);                                               \
 }                                                                            \
 char *dmxConfigGet##glob(void) {                                             \
     return (char *)(dmx##glob ? dmx##glob : def);                            \
 }
This macro is used to generate the following access methods:
  • dmxConfig{Set,Get}rules
  • dmxConfig{Set,Get}model
  • dmxConfig{Set,Get}layout
  • dmxConfig{Set,Get}variant
  • dmxConfig{Set,Get}options These methods are used to read and write information about the keyboard.


Typedef Documentation

typedef struct DMXConfigCmdStruct DMXConfigCmd
 

This stucture stores the parsed configuration information.

typedef struct DMXConfigCmdStruct * DMXConfigCmdPtr
 

This stucture stores the parsed configuration information.

typedef struct DMXConfigListStruct DMXConfigList
 

Stores lists of configuration information.

typedef struct DMXConfigListStruct * DMXConfigListPtr
 

Stores lists of configuration information.


Function Documentation

void dmxConfigConfigure void   ) 
 

Set up the appropriate global variables so that the DMX server will be initialized using the configuration specified in the config file and on the command line.

void dmxConfigSetMaxScreens void   ) 
 

This function determines the number of displays we WILL have and sets MAXSCREENS to that value. This is difficult since the number depends on the command line (which is easy to count) or on the config file, which has to be parsed.

void dmxConfigStoreConfig const char *  config  ) 
 

Make a note that config should be used as the configuration for current instantiation of the DMX server.

void dmxConfigStoreDisplay const char *  display  ) 
 

Make a note that display is the name of an X11 display that should be initialized as a backend (output) display. Called from ddxProcessArgument.

void dmxConfigStoreFile const char *  file  ) 
 

Make a note that file is the configuration file.

void dmxConfigStoreInput const char *  input  ) 
 

Make a note that input is the name of an X11 display that should be used for input (either a backend or a console input device).

void dmxConfigStoreXInput const char *  input  ) 
 

Make a note that input is the name of an X11 display that should be used for input from XInput extension devices.


Generated June 29, 2004 for Distributed Multihead X by doxygen 1.3.4. @ 1.1 log @Initial revision @ text @@ 1.1.1.1 log @initial import of xorg-server-1.4.2 @ text @@ 1.1.1.2 log @import xorg-server 1.9.2. important changes since 1.6.5 include: - built-in symbol visibility, default not export - fixes for various crashes - many fixes for XI2, EXA, dix, render, glx, xkb, EDID, randr, Xv, resource handling, Xext, vfb, xfree86 / vga and composite support. - fixes several memory leaks - many many documentation updates - record extension enabled - no longer looks for XF86Config files @ text @d9 14 a22 160

dmxconfig.c File Reference

#include "dmx.h"
#include "dmxinput.h"
#include "dmxconfig.h"
#include "dmxparse.h"
#include "dmxlog.h"
#include "dmxcb.h"
#include "dmxstat.h"
#include "parser.h"

Data Structures

struct  DMXConfigListStruct
struct  DMXConfigCmdStruct

Defines

#define GEN(param, glob, def)

Typedefs

typedef struct DMXConfigListStruct DMXConfigList
typedef struct
DMXConfigListStruct
DMXConfigListPtr
typedef struct DMXConfigCmdStruct DMXConfigCmd
typedef struct DMXConfigCmdStructDMXConfigCmdPtr

Functions

int yyparse (void)
void dmxConfigStoreDisplay (const char *display)
void dmxConfigStoreInput (const char *input)
void dmxConfigStoreXInput (const char *input)
void dmxConfigStoreFile (const char *file)
void dmxConfigStoreConfig (const char *config)
static int dmxConfigReadFile (const char *filename, int debug)
static const char * dmxConfigMatch (const char *target, DMXConfigEntryPtr entry)
static DMXScreenInfodmxConfigAddDisplay (const char *name, int scrnWidth, int scrnHeight, int scrnX, int scrnY, int scrnXSign, int scrnYSign, int rootWidth, int rootHeight, int rootX, int rootY, int rootXSign, int rootYSign)
DMXInputInfodmxConfigAddInput (const char *name, int core)
static void dmxConfigCopyFromDisplay (DMXConfigDisplayPtr d)
static void dmxConfigCopyFromWall (DMXConfigWallPtr w)
static void dmxConfigCopyFromOption (DMXConfigOptionPtr o)
static void dmxConfigCopyFromParam (DMXConfigParamPtr p)
static void dmxConfigCopyData (DMXConfigVirtualPtr v)
static void dmxConfigFromCommandLine (void)
static void dmxConfigFromConfigFile (void)
static void dmxConfigConfigInputs (void)
void dmxConfigConfigure (void)
void dmxConfigSetMaxScreens (void)

Variables

FILE * yyin
static char * dmxXkbRules
static char * dmxXkbModel
static char * dmxXkbLayout
static char * dmxXkbVariant
static char * dmxXkbOptions
DMXConfigEntryPtr dmxConfigEntry
static DMXConfigCmd dmxConfigCmd
static int dmxDisplaysFromCommandLine

Detailed Description

Provides interface for reading DMX configuration files and for combining that information with command-line configuration parameters.


Define Documentation

#define GEN (   param,
  glob,
  def 
)
Value:
void dmxConfigSet##glob(const char *param) {                                 \
     if (dmx##glob) free((void *)dmx##glob);                                  \
     dmx##glob = strdup(param);                                               \
 }                                                                            \
 char *dmxConfigGet##glob(void) {                                             \
     return (char *)(dmx##glob ? dmx##glob : def);                            \
 }

This macro is used to generate the following access methods:

  • dmxConfig{Set,Get}rules
  • dmxConfig{Set,Get}model
  • dmxConfig{Set,Get}layout
  • dmxConfig{Set,Get}variant
  • dmxConfig{Set,Get}options These methods are used to read and write information about the keyboard.

Typedef Documentation

This stucture stores the parsed configuration information.

d24 1 a24 26

Stores lists of configuration information.

d26 2 a27 93

Function Documentation

static DMXScreenInfo* dmxConfigAddDisplay ( const char *  name,
int  scrnWidth,
int  scrnHeight,
int  scrnX,
int  scrnY,
int  scrnXSign,
int  scrnYSign,
int  rootWidth,
int  rootHeight,
int  rootX,
int  rootY,
int  rootXSign,
int  rootYSign 
) [static]
DMXInputInfo* dmxConfigAddInput ( const char *  name,
int  core 
)
static void dmxConfigConfigInputs ( void   )  [static]
void dmxConfigConfigure ( void   ) 

Set up the appropriate global variables so that the DMX server will be initialized using the configuration specified in the config file and on the command line.

References DMXConfigCmdStruct::config, DMXConfigCmdStruct::displays, dmxConfigConfigInputs(), dmxConfigFreeEntry(), dmxConfigFromCommandLine(), dmxConfigFromConfigFile(), dmxConfigReadFile(), dmxLog(), dmxWarning, and DMXConfigCmdStruct::filename.

Referenced by dmxConfigSetMaxScreens(), and InitOutput().

static void dmxConfigCopyFromOption ( DMXConfigOptionPtr  o  )  [static]
d62 3 a64 1 a65 4 d67 1 a67 25
static const char* dmxConfigMatch ( const char *  target,
DMXConfigEntryPtr  entry 
) [static]
a68 4 d70 4 a73 3 d75 9 a83 2
d85 21 a105 18

References dmxInfo, dmxLog(), str, yydebug, yyin, and yyparse().

Referenced by dmxConfigConfigure().

static int dmxConfigReadFile ( const char *  filename,
int  debug 
) [static]
d107 21 a127 22

This function determines the number of displays we WILL have and sets MAXSCREENS to that value. This is difficult since the number depends on the command line (which is easy to count) or on the config file, which has to be parsed.

References dmxConfigConfigure(), dmxDisplaysFromCommandLine, dmxNumScreens, and DMXConfigCmdStruct::filename.

Referenced by ddxProcessArgument().

void dmxConfigSetMaxScreens ( void   ) 
d129 21 a149 22

Make a note that config should be used as the configuration for current instantiation of the DMX server.

References DMXConfigCmdStruct::config, dmxFatal, and dmxLog().

Referenced by ddxProcessArgument().

void dmxConfigStoreConfig ( const char *  config  ) 
d151 21 a171 22

Make a note that display is the name of an X11 display that should be initialized as a backend (output) display. Called from ddxProcessArgument.

References DMXConfigCmdStruct::displays, dmxDisplaysFromCommandLine, dmxFatal, dmxLog(), DMXConfigListStruct::name, and DMXConfigListStruct::next.

Referenced by ddxProcessArgument().

void dmxConfigStoreDisplay ( const char *  display  ) 
d173 27 a199 21

Make a note that file is the configuration file.

References dmxFatal, dmxLog(), and DMXConfigCmdStruct::filename.

Referenced by ddxProcessArgument().

void dmxConfigStoreFile ( const char *  file  ) 
d201 1 d203 26 a228 21

Make a note that input is the name of an X11 display that should be used for input (either a backend or a console input device).

References dmxFatal, dmxLog(), DMXConfigCmdStruct::inputs, DMXConfigListStruct::name, and DMXConfigListStruct::next.

Referenced by ddxProcessArgument().

void dmxConfigStoreInput ( const char *  input  ) 
d230 1 d232 26 a257 21

Make a note that input is the name of an X11 display that should be used for input from XInput extension devices.

References dmxFatal, dmxLog(), DMXConfigListStruct::name, DMXConfigListStruct::next, and DMXConfigCmdStruct::xinputs.

Referenced by ddxProcessArgument().

void dmxConfigStoreXInput ( const char *  input  ) 
a258 5
int yyparse ( void   ) 

Referenced by dmxConfigReadFile(), and main().

a259 10

Variable Documentation

d261 26 a286 11
DMXConfigCmd dmxConfigCmd [static]
a287 5
DMXConfigEntryPtr dmxConfigEntry

Referenced by main().

a288 9
d290 26 a315 13
int dmxDisplaysFromCommandLine [static]
a316 3
char* dmxXkbLayout [static]
a317 9
d319 26 a344 11
char* dmxXkbModel [static]
a345 3
char* dmxXkbOptions [static]
a346 9
d348 26 a373 11
char* dmxXkbRules [static]
a374 3
char* dmxXkbVariant [static]
a375 9
d377 14 a390 8

Referenced by dmxConfigReadFile().

@ 1.1.1.3 log @initial import of xorg-server 1.10.3. highlights include: - fixes xorg bugs 29969, 30367, 30527, 30267, 30260, 29046, 30260, 31548, 28672, 24887, 32115, 21457, 32436, 21827, 28414, 24703, 32803, 16318, 33449, 33324, 33929, 35082, 35209, 36146, 36119 - many additional NULL checks - adjustments related to input ABI 12 - *lots* of dead code removal - vga arbitrator fixes - GL fixes - EDID fixes - conversion to using asprintf() in many places - many fixes from valgrind, compiler warnings see these for more details: http://lists.freedesktop.org/archives/xorg-announce/2011-February/001612.html http://lists.freedesktop.org/archives/xorg-announce/2011-April/001646.html http://lists.freedesktop.org/archives/xorg-announce/2011-May/001675.html http://lists.freedesktop.org/archives/xorg-announce/2011-July/001710.html @ text @d9 3 a11 2
FILE* yyin
d47 2 a48 2 d51 1 a51 1 d54 1 a54 1 d56 3 a58 3 DMXConfigListStruct *  d61 20 a80 20 d83 9 a91 9 d93 3 a95 3

Detailed Description

Provides interface for reading DMX configuration files and for combining that information with command-line configuration parameters.


Define Documentation

d103 1 a103 1 d109 1 a109 1 d115 2 a116 2 d121 1 a121 1 d207 2 a208 2 d213 2 a214 2 d219 2 a220 2 d225 2 a226 2 d231 2 a232 2 d237 2 a238 2 d243 2 a244 2 d249 2 a250 2 d255 2 a256 2 d261 2 a262 2 d267 2 a268 2 d273 2 a274 2 d279 2 a280 2 d285 1 a285 1 d304 2 a305 2 d310 2 a311 2 d316 1 a316 1 d335 3 a337 2 d357 3 a359 2 d380 3 a382 2 d402 3 a404 2 d411 1 a411 1

References dmxConfigAddDisplay(), _DMXConfigDisplay::name, PosAbsolute, _DMXConfigDisplay::rootHeight, _DMXConfigDisplay::rootWidth, _DMXConfigDisplay::rootX, _DMXConfigDisplay::rootXOrigin, _DMXConfigDisplay::rootXSign, _DMXConfigDisplay::rootY, _DMXConfigDisplay::rootYOrigin, _DMXConfigDisplay::scrnHeight, _DMXConfigDisplay::scrnWidth, _DMXConfigDisplay::scrnX, _DMXConfigDisplay::scrnXSign, _DMXConfigDisplay::scrnY, _DMXConfigDisplay::scrnYSign, _DMXScreenInfo::where, _DMXScreenInfo::whereX, and _DMXScreenInfo::whereY.

d424 3 a426 2 d446 3 a448 2 d468 3 a470 2 d477 1 a477 1

References dmxConfigAddDisplay(), dmxInfo, dmxLog(), dmxNumScreens, dmxScreens, _DMXConfigWall::height, _DMXScreenInfo::name, _DMXConfigWall::nameList, _DMXConfigString::next, PosAbsolute, PosBelow, PosRightOf, _DMXConfigString::string, _DMXScreenInfo::where, _DMXScreenInfo::whereRefScreen, _DMXScreenInfo::whereX, _DMXScreenInfo::whereY, _DMXConfigWall::width, _DMXConfigWall::xwall, and _DMXConfigWall::ywall.

d490 3 a492 2 d499 1 a499 1

References DMXConfigCmdStruct::displays, dmxConfigAddDisplay(), dmxInfo, dmxLog(), dmxNumScreens, dmxScreens, _DMXScreenInfo::name, DMXConfigListStruct::name, DMXConfigListStruct::next, PosAbsolute, PosBelow, PosRightOf, _DMXScreenInfo::where, _DMXScreenInfo::whereRefScreen, _DMXScreenInfo::whereX, and _DMXScreenInfo::whereY.

d512 3 a514 2 d534 2 a535 2 d540 2 a541 2 d546 1 a546 1 d565 2 a566 2 d571 2 a572 2 d577 1 a577 1 d596 3 a598 2 d619 3 a621 2 d642 3 a644 2 d665 3 a667 2 d688 3 a690 2 d711 3 a713 2 d734 3 a736 2 a871 4
struct  DMXConfigListStruct
struct  DMXConfigCmdStruct
#define GEN(param, glob, def)
typedef struct DMXConfigListStruct DMXConfigList
DMXConfigListPtr
typedef struct DMXConfigCmdStruct DMXConfigCmd
typedef struct DMXConfigCmdStructDMXConfigCmdPtr
int yyparse (void)
void dmxConfigStoreDisplay (const char *display)
void dmxConfigStoreInput (const char *input)
void dmxConfigStoreXInput (const char *input)
void dmxConfigStoreFile (const char *file)
void dmxConfigStoreConfig (const char *config)
static int dmxConfigReadFile (const char *filename, int debug)
static const char * dmxConfigMatch (const char *target, DMXConfigEntryPtr entry)
static DMXScreenInfodmxConfigAddDisplay (const char *name, int scrnWidth, int scrnHeight, int scrnX, int scrnY, int scrnXSign, int scrnYSign, int rootWidth, int rootHeight, int rootX, int rootY, int rootXSign, int rootYSign)
DMXInputInfodmxConfigAddInput (const char *name, int core)
static void dmxConfigCopyFromDisplay (DMXConfigDisplayPtr d)
static void dmxConfigCopyFromWall (DMXConfigWallPtr w)
static void dmxConfigCopyFromOption (DMXConfigOptionPtr o)
static void dmxConfigCopyFromParam (DMXConfigParamPtr p)
static void dmxConfigCopyData (DMXConfigVirtualPtr v)
static void dmxConfigFromCommandLine (void)
static void dmxConfigFromConfigFile (void)
static void dmxConfigConfigInputs (void)
void dmxConfigConfigure (void)
void dmxConfigSetMaxScreens (void)
FILE * yyin
static char * dmxXkbRules
static char * dmxXkbModel
static char * dmxXkbLayout
static char * dmxXkbVariant
static char * dmxXkbOptions
DMXConfigEntryPtr dmxConfigEntry
static DMXConfigCmd dmxConfigCmd
static int dmxDisplaysFromCommandLine
    def const char *  name, int  scrnWidth, int  scrnHeight, int  scrnX, int  scrnY, int  scrnXSign, int  scrnYSign, int  rootWidth, int  rootHeight, int  rootX, int  rootY, int  rootXSign, int  rootYSign  [static]const char *  name, int  core void  )void  )DMXConfigVirtualPtr  v)DMXConfigDisplayPtr  d)DMXConfigOptionPtr  o)DMXConfigParamPtr  p)DMXConfigWallPtr  w)void  )void  )const char *  target, DMXConfigEntryPtr  entry  [static]const char *  filename, int  debug  [static]void  )const char *  config)const char *  display)const char *  file)const char *  input)const char *  input)void  )