From c4dddee3f5d2714e0a5cb9a137cb01e7cf2adf2a Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 19 Nov 1998 16:06:46 +0000 Subject: Major update/merge of POSIX manual. --- doc/posix_users/device.t | 465 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 465 insertions(+) create mode 100644 doc/posix_users/device.t (limited to 'doc/posix_users/device.t') diff --git a/doc/posix_users/device.t b/doc/posix_users/device.t new file mode 100644 index 0000000000..05ef101fec --- /dev/null +++ b/doc/posix_users/device.t @@ -0,0 +1,465 @@ +@c +@c COPYRIGHT (c) 1988-1998. +@c On-Line Applications Research Corporation (OAR). +@c All rights reserved. +@c +@c $Id$ +@c + +@chapter Device- and Class- Specific Functions Manager + +@section Introduction + +The device- and class- specific functions manager is ... + +The directives provided by the device- and class- specific functions +manager are: + +@itemize @bullet +@item @code{cfgetispeed} - Reads terminal input baud rate +@item @code{cfgetospeed} - Reads terminal output baud rate +@item @code{cfsetispeed} - Sets terminal input baud rate +@item @code{cfsetospeed} - Set terminal output baud rate +@item @code{tcgetattr} - Gets terminal attributes +@item @code{tcsetattr} - Set terminal attributes +@item @code{tcsendbreak} - Sends a break to a terminal +@item @code{tcdrain} - Waits for all output to be transmitted to the terminal +@item @code{tcflush} - Discards terminal data +@item @code{tcflow} - Suspends/restarts terminal output +@item @code{tcgetpgrp} - Gets foreground process group ID +@item @code{tcsetpgrp} - Sets foreground process group ID +@end itemize + +@section Background + +There is currently no text in this section. + +@section Operations + +There is currently no text in this section. + +@section Directives + +This section details the device- and class- specific functions manager's +directives. A subsection is dedicated to each of this manager's directives +and describes the calling sequence, related constants, usage, +and status codes. + +@page +@subsection cfgetispeed - Reads terminal input baud rate + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include + +int cfgetispeed( + const struct termios *p +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +The @code{cfgetispeed()} function returns a code for baud rate. + +@subheading DESCRIPTION: + +The @code{cfsetispeed()} function stores a code for the terminal speed +stored in a struct termios. The codes are defined in @code{} +by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200, +B1800, B2400, B4800, B9600, B19200, and B38400. + +The @code{cfsetispeed()} function does not do anything to the hardware. +It merely stores a value for use by @code{tcsetattr()}. + +@subheading NOTES: + +Baud rates are defined by symbols, such as B110, B1200, B2400. The actual +number returned for any given speed may change from system to system. + +@page +@subsection cfgetospeed - Reads terminal output baud rate + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include + +int cfgetospeed( + const struct termios *p +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +The @code{cfgetospeed()} function returns the termios code for the baud rate. + +@subheading DESCRIPTION: + +The @code{cfgetospeed()} function returns a code for the terminal speed +stored in a @code{struct termios}. The codes are defined in @code{} +by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800, +B2400, B4800, B9600, B19200, and B38400. + +The @code{cfgetospeed()} function does not do anything to the hardware. +It merely returns the value stored by a previous call to @code{tcgetattr()}. + +@subheading NOTES: + +Baud rates are defined by symbols, such as B110, B1200, B2400. The actual +number returned for any given speed may change from system to system. + +@page +@subsection cfsetispeed - Sets terminal input baud rate + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include + +int cfsetispeed( + struct termios *p, + speed_t speed +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +The @code{cfsetispeed()} function returns a zero when successful and +returns -1 when an error occurs. + +@subheading DESCRIPTION: + +The @code{cfsetispeed()} function stores a code for the terminal speed +stored in a struct termios. The codes are defined in @code{} +by the macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200, +B1800, B2400, B4800, B9600, B19200, and B38400. + +@subheading NOTES: + +This function merely stores a value in the @code{termios} structure. It +does not change the terminal speed until a @code{tcsetattr()} is done. +It does not detect impossible terminal speeds. + +@page +@subsection cfsetospeed - Sets terminal output baud rate + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include + +int cfsetospeed( + struct termios *p, + speed_t speed +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +The @code{cfsetospeed()} function returns a zero when successful and +returns -1 when an error occurs. + + +@subheading DESCRIPTION: + +The @code{cfsetospeed()} function stores a code for the terminal speed stored +in a struct @code{termios}. The codes are defiined in @code{} by the +macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800, B2400, +B4800, B9600, B19200, and B38400. + +The @code{cfsetospeed()} function does not do anything to the hardware. It +merely stores a value for use by @code{tcsetattr()}. + +@subheading NOTES: + +This function merely stores a value in the @code{termios} structure. +It does not change the terminal speed until a @code{tcsetattr()} is done. +It does not detect impossible terminal speeds. + +@page +@subsection tcgetattr - Gets terminal attributes + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include +#include + +int tcgetattr( + int fildes, + struct termios *p +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item EBADF +Invalid file descriptor + +@item ENOOTY +Terminal control function attempted for a file that is not a terminal. +@end table + +@subheading DESCRIPTION: + +The @code{tcgetattr()} gets the parameters associated with the terminal +referred to by @code{fildes} and stores them into the @code{termios()} +structure pointed to by @code{termios_p}. + +@subheading NOTES: + +NONE + +@page +@subsection tcsetattr - Set terminal attributes + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include +#include + +int tcsetattr( + int fildes, + int options, + const struct termios *tp +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +@page +@subsection tcsendbreak - Sends a break to a terminal + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +int tcsendbreak( +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +This routine is not currently supported by RTEMS but could be +in a future version. + +@page +@subsection tcdrain - Waits for all output to be transmitted to the terminal. + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +#include +#include + +int tcdrain( + int fildes +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item EBADF +Invalid file descriptor + +@item EINTR +Function was interrupted by a signal + +@item ENOTTY +Terminal control function attempted for a file that is not a terminal. + +@end table + +@subheading DESCRIPTION: + +The @code{tcdrain()} function waits until all output written to +@code{fildes} has been transmitted. + +@subheading NOTES: + +NONE + +@page +@subsection tcflush - Discards terminal data + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +int tcflush( +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +This routine is not currently supported by RTEMS but could be +in a future version. + +@page +@subsection tcflow - Suspends/restarts terminal output. + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +int tcflow( +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +This routine is not currently supported by RTEMS but could be +in a future version. + +@page +@subsection tcgetpgrp - Gets foreground process group ID + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +int tcgetpgrp( +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +This routine is not currently supported by RTEMS but could be +in a future version. + +@page +@subsection tcsetpgrp - Sets foreground process group ID + +@subheading CALLING SEQUENCE: + +@ifset is-C +@example +int tcsetpgrp( +); +@end example +@end ifset + +@ifset is-Ada +@end ifset + +@subheading STATUS CODES: + +@table @b +@item E +The + +@end table + +@subheading DESCRIPTION: + +@subheading NOTES: + +This routine is not currently supported by RTEMS but could be +in a future version. + + -- cgit v1.2.3