Table of Contents


DMXGetInputAttributes - determine input device attributes


#include <X11/extensions/dmxext.h>

Bool DMXGetInputAttributes(Display *dpy,
                           int id,
                           DMXInputAttributes *attr);


DMXGetInputAttributes() returns information about the input device specified with id. This information cannot be obtained from the XListInputDeivices(3X) call. id is the same as that used by the XListInputDevices(3X) call, and must be in the range 0 to one less than the value returned by DMXGetInputCount(3X) , inclusive.

The DMXInputAttributes structure is:

typedef struct {
    DMXInputEnum inputType;
    int          physicalScreen;
    int          physicalId;
    Bool         isCore;
    Bool         sendsCore;
    const char   *name;
    Bool         detached;
} DMXInputAttributes;

The value of inputType will always be valid, and will have one of the following values, depending on the type of input: DMXLocalInputType ", " DMXConsoleInputType ", or" DMXBackendInputType .

For local devices, all other fields returned, except isCore " and " sendsCore , are invalid.

For console devices, physicalScreen " and " physicalID will be invalid, and name will return the name of the X server on which the console window is displayed.

For back-end devices, physicalScreen will identify the back-end display and can be used as an argument to DMXGetScreenAttributes(3X) to obtain more information; physicalId will be the XInput device id on the back-end X server; and name will be invalid (since it does not provide any additional information that cannot be obtained with DMXGetScreenAttributes(3X) ).

If isCore is True, then this device is active as a true core input device and will send core events. If sendsCore is True, then this device is an XInput extension device, but sends core events instead of extension events. This behavior is different from that of XFree86 or Xorg, where XInput extension devices may send both extension events and core events.

If detached is True, then this device has been detached and is no longer producing input events. The device may be reattached using DMXAddInput(3X) .

Return Value

DMXGetInputAttributes() returns True unless there is a protocol error.

DMXGetInputAttributes() can generate BadValue (if the value of id is out of range).

See Also

DMXGetInputCount(3X) , XListInputDevices(3X) , DMXGetScreenAttributes(3X) , DMXAddInput(3X) , DMX(3X) , Xdmx(1)

Table of Contents