[Overview][Constants][Types][Procedures and functions][Variables][Index] | Reference for unit 'oldlinux' (#rtl)

# TCGetAttr

Terminal Control: Get terminal attributes

## Declaration

Source position: oldlinux.pp line 1497

`function TCGetAttr(`
`fd: LongInt;`
`var tios: Termios`
`):Boolean;`

## Description

TCGetAttr gets the terminal parameters from the terminal referred to by the file descriptor fd and returns them in a TermIOS structure tios. The function returns True if the call was succesfull, False otherwise.

## Errors

Errors are reported in LinuxError

## See also

TCDrain |  | Terminal control: Wait till all data was transmitted
TCFlow |  | Terminal control: Suspend transmission of data
TCFlush |  | Terminal control: Discard data buffer
TCGetPGrp |  | Terminal control: Get process group
TCSendBreak |  | Terminal control: Send break
TCSetAttr |  | Terminal control: Set attributes
TCSetPGrp |  | Terminal control: Set process group
TTYName |  | Terminal control: Get terminal name
IsATTY |  | Check if filehandle is a TTY (terminal)

## Example

    Program Example55;

    uses oldlinux;

    { Program to demonstrate the TCGetAttr/TCSetAttr/CFMakeRaw functions. }

    procedure ShowTermios(var tios:Termios);
    begin
      WriteLn('Input Flags  : $',hexstr(tios.c_iflag,8)+#13);
      WriteLn('Output Flags : $',hexstr(tios.c_oflag,8));
      WriteLn('Line Flags   : $',hexstr(tios.c_lflag,8));
      WriteLn('Control Flags: $',hexstr(tios.c_cflag,8));
    end;

    var
      oldios,
      tios : Termios;
    begin
      WriteLn('Old attributes:');
      TCGetAttr(1,tios);
      ShowTermios(tios);
      oldios:=tios;
      Writeln('Setting raw terminal mode');
      CFMakeRaw(tios);
      TCSetAttr(1,TCSANOW,tios);
      WriteLn('Current attributes:');
      TCGetAttr(1,tios);
      ShowTermios(tios);
      TCSetAttr(1,TCSANOW,oldios);
    end.

Documentation generated on: Feb 26 2014