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 08:43:34 +01:00
|
|
|
|
|
|
|
/* Prototypes for DGA functions that the DDX must provide */
|
|
|
|
|
|
|
|
#ifdef HAVE_DIX_CONFIG_H
|
|
|
|
#include <dix-config.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef _VIDMODEPROC_H_
|
|
|
|
#define _VIDMODEPROC_H_
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
VIDMODE_H_DISPLAY,
|
|
|
|
VIDMODE_H_SYNCSTART,
|
|
|
|
VIDMODE_H_SYNCEND,
|
|
|
|
VIDMODE_H_TOTAL,
|
|
|
|
VIDMODE_H_SKEW,
|
|
|
|
VIDMODE_V_DISPLAY,
|
|
|
|
VIDMODE_V_SYNCSTART,
|
|
|
|
VIDMODE_V_SYNCEND,
|
|
|
|
VIDMODE_V_TOTAL,
|
|
|
|
VIDMODE_FLAGS,
|
|
|
|
VIDMODE_CLOCK
|
|
|
|
} VidModeSelectMode;
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
VIDMODE_MON_VENDOR,
|
|
|
|
VIDMODE_MON_MODEL,
|
|
|
|
VIDMODE_MON_NHSYNC,
|
|
|
|
VIDMODE_MON_NVREFRESH,
|
|
|
|
VIDMODE_MON_HSYNC_LO,
|
|
|
|
VIDMODE_MON_HSYNC_HI,
|
|
|
|
VIDMODE_MON_VREFRESH_LO,
|
|
|
|
VIDMODE_MON_VREFRESH_HI
|
|
|
|
} VidModeSelectMonitor;
|
|
|
|
|
|
|
|
typedef union {
|
2013-11-15 08:56:15 +01:00
|
|
|
const void *ptr;
|
2012-03-21 20:55:09 +01:00
|
|
|
int i;
|
|
|
|
float f;
|
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 08:43:34 +01:00
|
|
|
} vidMonitorValue;
|
|
|
|
|
2012-07-10 03:02:56 +02:00
|
|
|
extern Bool VidModeExtensionInit(ScreenPtr pScreen);
|
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 08:43:34 +01:00
|
|
|
|
|
|
|
extern _X_EXPORT Bool VidModeAvailable(int scrnIndex);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeGetCurrentModeline(int scrnIndex, void **mode,
|
2012-03-21 20:55:09 +01:00
|
|
|
int *dotClock);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeGetFirstModeline(int scrnIndex, void **mode,
|
2012-03-21 20:55:09 +01:00
|
|
|
int *dotClock);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeGetNextModeline(int scrnIndex, void **mode,
|
2012-03-21 20:55:09 +01:00
|
|
|
int *dotClock);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeDeleteModeline(int scrnIndex, void *mode);
|
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 08:43:34 +01:00
|
|
|
extern _X_EXPORT Bool VidModeZoomViewport(int scrnIndex, int zoom);
|
|
|
|
extern _X_EXPORT Bool VidModeGetViewPort(int scrnIndex, int *x, int *y);
|
|
|
|
extern _X_EXPORT Bool VidModeSetViewPort(int scrnIndex, int x, int y);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeSwitchMode(int scrnIndex, void *mode);
|
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 08:43:34 +01:00
|
|
|
extern _X_EXPORT Bool VidModeLockZoom(int scrnIndex, Bool lock);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT Bool VidModeGetMonitor(int scrnIndex, void **monitor);
|
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 08:43:34 +01:00
|
|
|
extern _X_EXPORT int VidModeGetNumOfClocks(int scrnIndex, Bool *progClock);
|
|
|
|
extern _X_EXPORT Bool VidModeGetClocks(int scrnIndex, int *Clocks);
|
2012-03-21 20:55:09 +01:00
|
|
|
extern _X_EXPORT ModeStatus VidModeCheckModeForMonitor(int scrnIndex,
|
2013-12-15 10:05:51 +01:00
|
|
|
void *mode);
|
2012-03-21 20:55:09 +01:00
|
|
|
extern _X_EXPORT ModeStatus VidModeCheckModeForDriver(int scrnIndex,
|
2013-12-15 10:05:51 +01:00
|
|
|
void *mode);
|
|
|
|
extern _X_EXPORT void VidModeSetCrtcForMode(int scrnIndex, void *mode);
|
|
|
|
extern _X_EXPORT Bool VidModeAddModeline(int scrnIndex, void *mode);
|
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 08:43:34 +01:00
|
|
|
extern _X_EXPORT int VidModeGetDotClock(int scrnIndex, int Clock);
|
|
|
|
extern _X_EXPORT int VidModeGetNumOfModes(int scrnIndex);
|
2012-03-21 20:55:09 +01:00
|
|
|
extern _X_EXPORT Bool VidModeSetGamma(int scrnIndex, float red, float green,
|
|
|
|
float blue);
|
|
|
|
extern _X_EXPORT Bool VidModeGetGamma(int scrnIndex, float *red, float *green,
|
|
|
|
float *blue);
|
2013-12-15 10:05:51 +01:00
|
|
|
extern _X_EXPORT void *VidModeCreateMode(void);
|
|
|
|
extern _X_EXPORT void VidModeCopyMode(void *modefrom, void *modeto);
|
|
|
|
extern _X_EXPORT int VidModeGetModeValue(void *mode, int valtyp);
|
|
|
|
extern _X_EXPORT void VidModeSetModeValue(void *mode, int valtyp, int val);
|
|
|
|
extern _X_EXPORT vidMonitorValue VidModeGetMonitorValue(void *monitor,
|
2012-03-21 20:55:09 +01:00
|
|
|
int valtyp, int indx);
|
|
|
|
extern _X_EXPORT Bool VidModeSetGammaRamp(int, int, CARD16 *, CARD16 *,
|
|
|
|
CARD16 *);
|
|
|
|
extern _X_EXPORT Bool VidModeGetGammaRamp(int, int, CARD16 *, CARD16 *,
|
|
|
|
CARD16 *);
|
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 08:43:34 +01:00
|
|
|
extern _X_EXPORT int VidModeGetGammaRampSize(int scrnIndex);
|
|
|
|
|
|
|
|
#endif
|