Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals

dmxinput.h File Reference

Go to the source code of this file.

Data Structures

struct  _DMXInputInfo


#define DMX_MAX_SIGIO_FDS   4


typedef _DMXLocalInputInfoDMXLocalInputInfoPtr


enum  DMXUpdateType {


void dmxInputInit (DMXInputInfo *dmxInput)
void dmxInputReInit (DMXInputInfo *dmxInput)
void dmxInputLateReInit (DMXInputInfo *dmxInput)
void dmxInputFree (DMXInputInfo *dmxInput)
void dmxInputLogDevices (void)
void dmxUpdateWindowInfo (DMXUpdateType type, WindowPtr pWindow)
void dmxeqEnqueue (xEvent *e)
void dmxeqSwitchScreen (ScreenPtr pScreen, Bool fromDIX)
void dmxGetGlobalPosition (int *x, int *y)


int dmxNumInputs

Detailed Description

This file provides access to:

The goal is that no files in hw/dmx should include header files from hw/dmx/input -- the interface defined here should be the only interface exported to the hw/dmx layer.

See also:

Define Documentation

#define DMX_MAX_SIGIO_FDS   4

Maximum number of file descriptors for SIGIO handling

Typedef Documentation

typedef struct _DMXLocalInputInfo* DMXLocalInputInfoPtr

An opaque structure that is only exposed in the dmx/input layer.

Enumeration Type Documentation

enum dmxSigioState

State of the SIGIO engine

Enumeration values:
DMX_NOSIGIO  Device does not use SIGIO at all.
DMX_USESIGIO  Device can use SIGIO, but is not (e.g., because the VT is switch away).
DMX_ACTIVESIGIO  Device is currently using SIGIO.

enum DMXUpdateType

Reason why window layout was updated.

Enumeration values:
DMX_UPDATE_REALIZE  Window realized
DMX_UPDATE_UNREALIZE  Window unrealized
DMX_UPDATE_RESTACK  Stacking order changed
DMX_UPDATE_COPY  Window copied
DMX_UPDATE_RESIZE  Window resized
DMX_UPDATE_REPARENT  Window reparented

Function Documentation

void dmxeqEnqueue xEvent *  e  ) 

This function adds an event to the end of the queue. If the event is an XInput event, then the next event (the valuator event) is also stored in the queue. If the new event has a time before the time of the last event currently on the queue, then the time is updated for the new event.

Must be reentrant with ProcessInputEvents. Assumption: dmxeqEnqueue will never be interrupted. If this is called from both signal handlers and regular code, make sure the signal is suspended when called from regular code.

void dmxeqSwitchScreen ScreenPtr  pScreen,
Bool  fromDIX

Make pScreen the new screen for enqueueing events. If fromDIX is TRUE, also make pScreen the new screen for dequeuing events.

void dmxGetGlobalPosition int *  x,
int *  y

Return DMX's notion of the pointer position in the global coordinate space.

void dmxInputFree DMXInputInfo dmxInput  ) 

Free all of the memory associated with dmxInput

void dmxInputInit DMXInputInfo dmxInput  ) 

Initialize all of the devices described in dmxInput.

void dmxInputLateReInit DMXInputInfo dmxInput  ) 

Re-initialize all the devices described in dmxInput. Called from #dmxReconfig after the cursor is redisplayed.

void dmxInputLogDevices void   ) 

Log information about all of the known devices using dmxLog().

void dmxInputReInit DMXInputInfo dmxInput  ) 

Re-initialize all the devices described in dmxInput. Called from #dmxReconfig before the cursor is redisplayed.

void dmxUpdateWindowInfo DMXUpdateType  type,
WindowPtr  pWindow

This routine is called from #dmxwindow.c whenever the layout of windows on the display might have changed. This information is used by input drivers (currently only the console driver) that provide information about window layout to the user.

Variable Documentation

DMXInputInfo* dmxInputs

List of inputs

int dmxNumInputs

Number of dmxInputs

Generated June 13, 2004 for Distributed Multihead X by doxygen 1.3.4.