/*
* Copyright 2002 Red Hat Inc., Durham, North Carolina.
*
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation on the rights to use, copy, modify, merge,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice (including the
* next paragraph) shall be included in all copies or substantial
* portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
/*
* Authors:
* Rickard E. (Rik) Faith <faith@redhat.com>
*
*/
/** \file
* Interface for low-level input support. \see dmxinputinit.c */
#ifndef _DMXINPUTINIT_H_
#define _DMXINPUTINIT_H_
#include "dmx.h"
#include "dmxinput.h"
#include "dmxlog.h"
typedef enum {
typedef enum {
typedef enum {
typedef enum {
/** Stores information from low-level device that is used to initialize
* the device at the dix level. */
typedef struct _DMXLocalInitInfo {
* present */
* cause focus */
* causes proximity events */
* keyboard feedback */
* pointer feedback */
* LED indicators */
* bell */
* integer feedback */
* string feedback */
int *valuators,
int firstAxis,
int axesCount,
/** Stores a mapping between the device id on the remote X server and
* the id on the DMX server */
typedef struct _DMXEventMap {
} DMXEventMap;
/** This is the device-independent structure used by the low-level input
* routines. The contents are not exposed to top-level .c files (except
* dmxextensions.c). \see dmxinput.h \see dmxextensions.c */
typedef struct _DMXLocalInputInfo {
* structs are bound to the same
* device */
* device-dependent
* private */
* device-dependent
* private */
* (during a
* reconfiguration) */
* (called very late
* during a
* reconfiguration) */
* device updates the
* cursor position */
* events from the
* device*/
* queue) */
* information */
* for XInput in
* dmxevents.c */
* head */
* tail */
/* for XInput ChangePointerDevice */
xTimecoord *,
unsigned long, unsigned long, ScreenPtr);
* map
* optimization */
* if any */
* side, if any */
extern int dmxInputDetachId(int id);
#endif