Blame man/DMXAddInput.man

Packit ec660a
.\" Copyright 2004 Red Hat Inc., Durham, North Carolina.
Packit ec660a
.\" All Rights Reserved.
Packit ec660a
.\"
Packit ec660a
.\" Permission is hereby granted, free of charge, to any person obtaining
Packit ec660a
.\" a copy of this software and associated documentation files (the
Packit ec660a
.\" "Software"), to deal in the Software without restriction, including
Packit ec660a
.\" without limitation on the rights to use, copy, modify, merge,
Packit ec660a
.\" publish, distribute, sublicense, and/or sell copies of the Software,
Packit ec660a
.\" and to permit persons to whom the Software is furnished to do so,
Packit ec660a
.\" subject to the following conditions:
Packit ec660a
.\"
Packit ec660a
.\" he above copyright notice and this permission notice (including the
Packit ec660a
.\" next paragraph) shall be included in all copies or substantial
Packit ec660a
.\" portions of the Software.
Packit ec660a
.\"
Packit ec660a
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
Packit ec660a
.\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
Packit ec660a
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
Packit ec660a
.\" NON-INFRINGEMENT.  IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
Packit ec660a
.\" BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
Packit ec660a
.\" ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
Packit ec660a
.\" CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
Packit ec660a
.\" SOFTWARE.
Packit ec660a
.TH DMXAddInput __libmansuffix__ __vendorversion__
Packit ec660a
.SH NAME
Packit ec660a
DMXAddInput, DMXAddBackendInput, DMXAddConsoleInput \- attach a new input
Packit ec660a
.SH SYNOPSIS
Packit ec660a
.B #include <X11/extensions/dmxext.h>
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
.BI "Bool DMXAddInput(Display " *dpy ,
Packit ec660a
.BI "                 unsigned int " mask ,
Packit ec660a
.BI "                 DMXInputAttributes " *attr ,
Packit ec660a
.BI "                 int " *id );
Packit ec660a
.br
Packit ec660a
.BI "Bool DMXAddBackendInput(Display " *dpy ,
Packit ec660a
.BI "                        int " screen ,
Packit ec660a
.BI "                        int " sendsCore ,
Packit ec660a
.BI "                        int " *newId );
Packit ec660a
.br
Packit ec660a
.BI "Bool DMXAddConsoleInput(Display " *dpy ,
Packit ec660a
.BI "                        const char " *name ,
Packit ec660a
.BI "                        int " sendsCore ,
Packit ec660a
.BI "                        int " *newId );
Packit ec660a
.fi
Packit ec660a
.SH DESCRIPTION
Packit ec660a
.B DMXAddInput()
Packit ec660a
is used to attach a new input (or a previously detached input) to the
Packit ec660a
.BR Xdmx (1)
Packit ec660a
server.
Packit ec660a
.I mask
Packit ec660a
specifies the fields in
Packit ec660a
.I attr
Packit ec660a
that are active, and
Packit ec660a
.I id
Packit ec660a
returns the device if of the first device in the series that is added.
Packit ec660a
.PP
Packit ec660a
The value of
Packit ec660a
.I mask
Packit ec660a
is computed from the following values:
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
DMXInputType
Packit ec660a
DMXInputPhysicalScreen
Packit ec660a
DMXInputSendsCore
Packit ec660a
.fi
Packit ec660a
.PP
Packit ec660a
The
Packit ec660a
.B DMXInputAttributes
Packit ec660a
structure is:
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
typedef struct {
Packit ec660a
    DMXInputEnum inputType;
Packit ec660a
    int          physicalScreen;
Packit ec660a
    int          physicalId;
Packit ec660a
    Bool         isCore;
Packit ec660a
    Bool         sendsCore;
Packit ec660a
    const char   *name;
Packit ec660a
    Bool         detached;
Packit ec660a
} DMXInputAttributes;
Packit ec660a
.fi
Packit ec660a
.PP
Packit ec660a
.I inputType
Packit ec660a
may have the value
Packit ec660a
.B DMXConsoleInputType " or " DMXBackendInputType .
Packit ec660a
.PP
Packit ec660a
For console devices,
Packit ec660a
.I name
Packit ec660a
will specify the display to be used.
Packit ec660a
.PP
Packit ec660a
For back-end devices,
Packit ec660a
.I physicalScreen
Packit ec660a
will specify the
Packit ec660a
.BR Xdmx (1)
Packit ec660a
screen number.
Packit ec660a
.PP
Packit ec660a
If
Packit ec660a
.I sendsCore
Packit ec660a
is
Packit ec660a
.BR True ,
Packit ec660a
the new device will be added as a true core device.
Packit ec660a
.PP
Packit ec660a
If a device was removed with
Packit ec660a
.BR DMXRemoveInput (__libmansuffix__)
Packit ec660a
an attempt will be made to reconnect the previous devices
Packit ec660a
.RI ( sendsCore
Packit ec660a
is ignored in this case).
Packit ec660a
.PP
Packit ec660a
.B DMXAddBackendInput()
Packit ec660a
is a helper function that is used to add input from a back-end server.
Packit ec660a
With this function,
Packit ec660a
.I screen
Packit ec660a
refers to the back-end screen,
Packit ec660a
.I sendsCore
Packit ec660a
is
Packit ec660a
.B True
Packit ec660a
if the new input should send core events (and it ignored if the input
Packit ec660a
has been detached), and
Packit ec660a
.I newId
Packit ec660a
will hold the device id of the first device in the series added.
Packit ec660a
.PP
Packit ec660a
.B DMXAddConsoleInput()
Packit ec660a
is a helper function that is used to add input from a console.  With
Packit ec660a
this function,
Packit ec660a
.I name
Packit ec660a
is the name of the console display,
Packit ec660a
.I sendsCore
Packit ec660a
is
Packit ec660a
.B True
Packit ec660a
if the new input should send core events (and it ignored if the input
Packit ec660a
has been detached), and
Packit ec660a
.I newId
Packit ec660a
will hold the device id of the first device in the series added.
Packit ec660a
.SH "RETURN VALUE"
Packit ec660a
.B DMXAddInput()
Packit ec660a
returns
Packit ec660a
.B True
Packit ec660a
on success and
Packit ec660a
.B False
Packit ec660a
otherwise.
Packit ec660a
.PP
Packit ec660a
.B DMXAddInput()
Packit ec660a
can generate
Packit ec660a
.B BadValue
Packit ec660a
(if
Packit ec660a
.I inputType
Packit ec660a
is invalid or
Packit ec660a
.I physicalScreen
Packit ec660a
is out of range),
Packit ec660a
.B BadAccess
Packit ec660a
(if the input has already been attached or if the backend screen is
Packit ec660a
currently detached).
Packit ec660a
.SH NOTES
Packit ec660a
Local devices cannot be attached or detached.
Packit ec660a
.PP
Packit ec660a
Attributes that are not specified will default to 0.  This may lead to
Packit ec660a
unintended results.
Packit ec660a
.SH "SEE ALSO"
Packit ec660a
.BR DMXRemoveInput "(__libmansuffix__), " DMX "(__libmansuffix__), " Xdmx (1)