xserver-multidpi/include/globals.h
Paulo Cesar Pereira de Andrade 49f77fff14 Rework symbol visibility for easier maintenance
Save in a few special cases, _X_EXPORT should not be used in C source
files. Instead, it should be used in headers, and the proper C source
include that header. Some special cases are symbols that need to be
shared between modules, but not expected to be used by external drivers,
and symbols that are accessible via LoaderSymbol/dlopen.

  This patch also adds conditionally some new sdk header files, depending
on extensions enabled. These files were added to match pattern for
other extensions/modules, that is, have the headers "deciding" symbol
visibility in the sdk. These headers are:
o Xext/panoramiXsrv.h, Xext/panoramiX.h
o fbpict.h (unconditionally)
o vidmodeproc.h
o mioverlay.h (unconditionally, used only by xaa)
o xfixes.h (unconditionally, symbols required by dri2)

  LoaderSymbol and similar functions now don't have different prototypes,
in loaderProcs.h and xf86Module.h, so that both headers can be included,
without the need of defining IN_LOADER.

  xf86NewInputDevice() device prototype readded to xf86Xinput.h, but
not exported (and with a comment about it).
2008-12-03 05:43:34 -02:00

145 lines
3.0 KiB
C

#ifndef _XSERV_GLOBAL_H_
#define _XSERV_GLOBAL_H_
#include "window.h" /* for WindowPtr */
/* Global X server variables that are visible to mi, dix, os, and ddx */
extern _X_EXPORT CARD32 defaultScreenSaverTime;
extern _X_EXPORT CARD32 defaultScreenSaverInterval;
extern _X_EXPORT CARD32 ScreenSaverTime;
extern _X_EXPORT CARD32 ScreenSaverInterval;
#ifdef SCREENSAVER
extern _X_EXPORT Bool screenSaverSuspended;
#endif
extern _X_EXPORT char *defaultFontPath;
extern _X_EXPORT int monitorResolution;
extern _X_EXPORT int defaultColorVisualClass;
extern _X_EXPORT WindowPtr WindowTable[MAXSCREENS];
extern _X_EXPORT int GrabInProgress;
extern _X_EXPORT Bool noTestExtensions;
extern _X_EXPORT DDXPointRec dixScreenOrigins[MAXSCREENS];
extern _X_EXPORT char *ConnectionInfo;
#ifdef DPMSExtension
extern _X_EXPORT CARD32 defaultDPMSStandbyTime;
extern _X_EXPORT CARD32 defaultDPMSSuspendTime;
extern _X_EXPORT CARD32 defaultDPMSOffTime;
extern _X_EXPORT CARD32 DPMSStandbyTime;
extern _X_EXPORT CARD32 DPMSSuspendTime;
extern _X_EXPORT CARD32 DPMSOffTime;
extern _X_EXPORT CARD16 DPMSPowerLevel;
extern _X_EXPORT Bool defaultDPMSEnabled;
extern _X_EXPORT Bool DPMSEnabled;
extern _X_EXPORT Bool DPMSEnabledSwitch;
extern _X_EXPORT Bool DPMSDisabledSwitch;
extern _X_EXPORT Bool DPMSCapableFlag;
#endif
#ifdef PANORAMIX
extern _X_EXPORT Bool PanoramiXExtensionDisabledHack;
#endif
#ifdef COMPOSITE
extern _X_EXPORT Bool noCompositeExtension;
#endif
#ifdef DAMAGE
extern _X_EXPORT Bool noDamageExtension;
#endif
#ifdef DBE
extern _X_EXPORT Bool noDbeExtension;
#endif
#ifdef DPMSExtension
extern _X_EXPORT Bool noDPMSExtension;
#endif
#ifdef GLXEXT
extern _X_EXPORT Bool noGlxExtension;
#endif
#ifdef SCREENSAVER
extern _X_EXPORT Bool noScreenSaverExtension;
#endif
#ifdef MITSHM
extern _X_EXPORT Bool noMITShmExtension;
#endif
#ifdef MULTIBUFFER
extern _X_EXPORT Bool noMultibufferExtension;
#endif
#ifdef RANDR
extern _X_EXPORT Bool noRRExtension;
#endif
#ifdef RENDER
extern _X_EXPORT Bool noRenderExtension;
#endif
#ifdef XCSECURITY
extern _X_EXPORT Bool noSecurityExtension;
#endif
#ifdef RES
extern _X_EXPORT Bool noResExtension;
#endif
#ifdef XF86BIGFONT
extern _X_EXPORT Bool noXFree86BigfontExtension;
#endif
#ifdef XFreeXDGA
extern _X_EXPORT Bool noXFree86DGAExtension;
#endif
#ifdef XF86DRI
extern _X_EXPORT Bool noXFree86DRIExtension;
#endif
#ifdef XF86VIDMODE
extern _X_EXPORT Bool noXFree86VidModeExtension;
#endif
#ifdef XFIXES
extern _X_EXPORT Bool noXFixesExtension;
#endif
#ifdef XKB
/* noXkbExtension is defined in xkb/xkbInit.c */
extern _X_EXPORT Bool noXkbExtension;
#endif
#ifdef PANORAMIX
extern _X_EXPORT Bool noPanoramiXExtension;
#endif
#ifdef XSELINUX
extern _X_EXPORT Bool noSELinuxExtension;
#define SELINUX_MODE_DEFAULT 0
#define SELINUX_MODE_DISABLED 1
#define SELINUX_MODE_PERMISSIVE 2
#define SELINUX_MODE_ENFORCING 3
extern _X_EXPORT int selinuxEnforcingState;
#endif
#ifdef XV
extern _X_EXPORT Bool noXvExtension;
#endif
#ifdef DRI2
extern _X_EXPORT Bool noDRI2Extension;
#endif
#endif /* !_XSERV_GLOBAL_H_ */