cfgetospeed、cfsetospeed、cfgetispeed、または cfsetispeed サブルーチン
目的
入出力ボー・レートを取得および設定します。
ライブラリー
標準 C ライブラリー (libc.a)
構文
#include <termios.h> const struct termios *TermiosPointer;
speed_t cfgetispeed (TermiosPointer)
const struct termios *TermiosPointer; int cfsetispeed (TermiosPointer, Speed)
struct termios *TermiosPointer;
speed_t Speed;説明
termios 構造体内の入出力ボー・レートの値を取得および設定するために、ボー・レート・サブルーチンが提供されています。 tcsetattr 関数が正常に呼び出されるまで、以下に示す端末装置への影響は有効にならず、すべてのエラーが検出されるわけではありません。
入出力ボー・レートは、 termios 構造体に保管されます。 ボー・レートでサポートされる値は、この説明の後の 表 に示されています。
termios.h ファイルは、 speed_t 型を符号なし整数型として定義します。
cfgetospeed サブルーチンは、 TermiosPointer パラメーターが指す termios 構造体に保管された出力ボー・レートを返します。
cfsetospeed サブルーチンは、 TermiosPointer パラメーターが指す termios 構造体に保管された出力ボー・レートを、 Speed パラメーターで指定された値に設定します。
cfgetispeed サブルーチンは、 TermiosPointer パラメーターが指す termios 構造体に保管された入力ボー・レートを返します。
cfsetispeed サブルーチンは、 TermiosPointer パラメーターが指す termios 構造体に保管された入力ボー・レートを、 Speed パラメーターで指定された値に設定します。
速度の特定の値は、 termios 構造体に設定され、 tcsetattr 関数に渡されると、特殊な意味を持ちます。 これらの値については、 tcsetattr サブルーチンで説明しています。
以下の表に、考えられるボー・レートをリストします。
| 名前 | 説明 |
|---|---|
| B0 | ハングアップ |
| B5 | 50 ボー |
| B75 | 75 ボー |
| B110 | 110 ボー |
| B134 | 134 ボー (Baud) |
| B150 | 150 ボー |
| B200 | 200 ボー |
| B300 | 300 ボー |
| B600 | 600 ボー |
| B1200 | 1200 ボー |
| B1800 | 1800 ボー |
| B2400 | 2400 ボー |
| B4800 | 4800 ボー |
| B9600 | 9600 ボー |
| B19200 | バウド |
| B38400 | 38400 ボー (38400 ボー) |
termios.h ファイルは、テーブルの名前シンボルを定義します。
パラメーター
| 項目 | 説明 |
|---|---|
| TermiosPointer | termios 構造体を指します。 |
| speed | ボー・レートを指定します。 |
戻り値
cfgetospeed および cfgetispeed サブルーチンは、解釈されずに、 termios データ構造体で検出された値を正確に返します。
cfsetospeedと cfsetispeedの両サブルーチンは、成功すれば0を、失敗すれば-1を返す。
例
出力ボー・レートを 0 (モデム制御回線のアサートを強制する) に設定するには、次のように入力します。
cfsetospeed (&my_termios, B0);
tcsetattr (stdout, TCSADRAIN, &my_termios);