Provides access to the natively attached mouse.
The mouse special file serves as an interface between the application interface and the system mouse. This special file provides the application with the ability to receive input from the mouse and allows the application to change mouse configuration parameters, such as mouse sampling rates and resolution.
Standard configuration methods work with the mouse special file. No user configurable attribute commands exist for this special file. Applications that open the special file can modify device attribute dynamically using the appropriate ioctl interface; however, modifications are not saved in the configuration database.
The open subroutine call specifying the mouse special file is processed normally except that the Oflag and Mode parameters are ignored. The open request is rejected when the special file is already opened or when a kernel extension attempts to open the special file. All mouse inputs are flushed following an open subroutine call until an input ring is established. The mouse device is reset to the default configuration when an open request is made.
The mouse special file does not support the read or write subroutine calls. Instead, input data is obtained from the mouse via the input ring. The read and write subroutine calls behave the same as read or write to the /dev/null file.
The mouse special file supports the following functions with ioctls:
Item | Description |
---|---|
IOCINFO | Returns a devinfo structure. |
MQUERYID | Returns the query mouse device identifier. |
MREGRING | Specifies the address of the input ring and the value to be used as the source identifier when enqueueing reports on the ring. |
MRFLUSH | Flushes the input ring. |
MTHRESHOLD | Sets the mouse reporting threshold. |
MRESOLUTION | Sets the mouse resolution. |
MSCALE | Sets the mouse scale factor. |
MSAMPLERATE | Sets the mouse sample rate. |
The following error codes can be found in the /usr/include/sys/errno.h file:
Item | Description |
---|---|
EFAULT | Indicates insufficient authority to access an address or invalid address. |
EIO | Indicates and I/O error. |
ENOMEM | Indicates insufficient memory for required paging operation. |
ENOSPC | Indicates insufficient file system or paging space. |
EINVAL | Indicates invalid argument specified. |
EINTR | Indicates that the request has been interrupted by a signal. |
EPERM | Specifies a permanent error occurred. |
EBUSY | Indicates a device is busy. |
ENXIO | Indicates an unsupported device number. |
ENODEV | Indicates an unsupported device or device type mismatch. |
EACCES | Indicates that an open is not allowed. |
Item | Description |
---|---|
/usr/include/sys/inputdd.h | Contains the ioctl commands. |