XSGIvcSelectInput(3)XSGIvcSelectInput(3)
NAME
XSGIvcSelectInput - select the XSGIvc extension event types
to be sent to a client.
SYNOPSIS
#include <X11/extensions/XSGIvc.h>
void XSGIvcSelectInput(Display *display,
int screen,
unsigned long event_mask)
PARAMETER
display Specifies the connection to the X server.
screen Specifies the screen of the X server.
event_mask Specifies the event mask. This mask is the
bitwise OR of one or more of the valid event
mask bits (see below).
DESCRIPTION
XSGIvcSelectInput() requests that the X server XSGIvc
extension report the events associated with specified event
mask. Events are reported relative to a screen. The XSGIvc
extension reports one type of event that can have many
subtypes each corresponding to one specific type of
selectable events for this extension. Different events
subtypes can be selected using the event_mask parameter.
STRUCTURES
The bits in the event mask are defined as follow:
#define XSGIvcVideoFormatNotifyMask (1L << 0)
#define XSGIvcScreenInputSyncSourceNotifyMask (1L << 1)
#define XSGIvcScreenLockStatusChangedNotifyMask (1L << 2)
#define XSGIvcOutputGainNotifyMask (1L << 3)
#define XSGIvcPedestalNotifyMask (1L << 4)
#define XSGIvcPhaseHNotifyMask (1L << 5)
#define XSGIvcPhaseSCHNotifyMask (1L << 6)
#define XSGIvcPhaseVNotifyMask (1L << 7)
#define XSGIvcOutputSyncNotifyMask (1L << 8)
#define XSGIvcPlatformParamNotifyMask (1L << 9)
#define XSGIvcGammaMapNotifyMask (1L << 10)
#define XSGIvcBlankingNotifyMask (1L << 11)
#define XSGIvcChannelInputRectangleNotifyMask (1L << 12)
The XSGIvcVideoFormatNotify event structure is defined as
follow:
Page 1 (printed 7/20/06)
XSGIvcSelectInput(3)XSGIvcSelectInput(3)
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcVideoFormatNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
} XSGIvcVideoFormatEvent;
The XSGIvcScreenInputSyncSourceNotify event structure is
defined as follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
Screen screen; /* screen of the event */
int xsgivctype; /* XSGIvcScreenInputSyncSourceNotify */
int voltage; /* nominal video voltage or TTL-level sync */
int source; /* internal or external genlock source */
} XSGIvcScreenInputSyncSourceEvent;
The XSGIvcScreenLockStatusChangedNotify event structure is
defined as follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcScreenLockStatusChangedNotify */
Screen screen; /* screen of the event */
int status; /* achieved or lost genlock */
} XSGIvcScreenLockStatusChangedEvent;
The server may not be able to report intervening instances
of rapidly changing lock state and therefore may report two
consecutive instances of the same state; client programs
must check the value of the status variable to determine the
state of the lock.
The XSGIvcOutputGainNotify event structure is defined as
follow:
typedef struct {
Page 2 (printed 7/20/06)
XSGIvcSelectInput(3)XSGIvcSelectInput(3)
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcOutputGainNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int component; /* RGBA component */
int value; /* gain new value */
} XSGIvcOutputGainEvent;
The XSGIvcPedestalNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcPedestalNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
Bool enable; /* true if pedesta is enabled */
} XSGIvcPedestalEvent;
The XSGIvcPhaseHNotifyMask event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcPhaseHEvent */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int value; /* horizontal phase new value */
} XSGIvcPhaseHEvent;
The XSGIvcPhaseSCHNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Page 3 (printed 7/20/06)
XSGIvcSelectInput(3)XSGIvcSelectInput(3)
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcPhaseSCHEvent */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int value; /* subcarrier horizontal phase new value */
} XSGIvcPhaseSCHEvent;
The XSGIvcPhaseVNotify event structure is defined as follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcPhaseVNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int value; /* subcarrier vertical phase new value */
} XSGIvcPhaseVEvent;
The XSGIvcOutputSyncNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcOutputSyncNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int syncPortIndex; /* port index */
int syncType; /* sync type */
} XSGIvcOutputSyncEvent;
The XSGIvcPlatformParamNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcPlatformParamNotify */
Screen screen; /* screen of the event */
Page 4 (printed 7/20/06)
XSGIvcSelectInput(3)XSGIvcSelectInput(3)
int channel; /* channel of the event */
int parameterId; /* Id of the device specif parameter */
} XSGIvcPlatformParamEvent;
The XSGIvcGammaMapNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcGammaMapNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int mapid; /* gamma map id number */
} XSGIvcGammaMapEvent;
The XSGIvcBlankingNotify event structure is defined as
follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcBlankingNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
int enable; /* true if blanking enabled */
} XSGIvcBlankingEvent;
The XSGIvcChannelInputRectangleNotify event structure is
defined as follow:
typedef struct {
int type; /* of event */
unsigned long serial; /* # of last request processed */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window root; /* root window of the event */
int xsgivctype; /* XSGIvcChannelInputRectangleNotify */
Screen screen; /* screen of the event */
int channel; /* channel of the event */
XSGIvcRectangle rct; /* set rectangle */
} XSGIvcChannelInputRectangleEvent;
Page 5 (printed 7/20/06)
XSGIvcSelectInput(3)XSGIvcSelectInput(3)
RETURN VALUE
Parameter errors are reported via BadValue
SEE ALSO
XSGIvc, XSGIvcLoadVideoFormat,
XSGIvcSetScreenInputSyncSource, XSGIvcSetOutputGain,
XSGIvcSetOutputPedestal, XSGIvcSetOutputPhaseH,
XSGIvcSetOutputPahseSCH, XSGIvcSetOutputPhaseV,
XSGIvcSetOutputSync, XSGIvcSetPlatformParameter,
XSGIvcSetOutputBlanking, XSGIvcSetChannelGammaMap
Page 6 (printed 7/20/06)