Tt_status ttdt_Revert( Tt_message context, const char * pathname, Tt_scope the_scope, XtAppContext app2run, int ms_timeout );
ttdt_Revert() 関数は、ファイル内容を元に戻すように ToolTalk クライアントに要求します。この関数は、Revert 要求を the_scope に送信し、応答を待ちます。Revert 要求は、pathname に保留中の変更を破棄するように、処理中である ToolTalk クライアントに求めます。
context パラメータがゼロ以外の値のとき、このルーチンによって作成されるメッセージは、スロット名が ENV_ で始まるすべてのコンテキストを継承します。
the_scope パラメータの値がゼロ (つまり TT_SCOPE_NONE) の場合、ファイルの配信範囲はデフォルト (TT_BOTH) に設定されます。しかし、たとえば ToolTalk データベース・サーバ rpc.ttdbserver が pathname を所有するファイル・サーバにインストールされていない場合、ファイル配信範囲は TT_FILE_IN_SESSION に設定されます。
app2run パラメータと ms_timeout パラメータは、この関数が送信する Revert 要求への応答をブロックするために、tttk_block_while() 関数に渡されます。
要求が指定のタイムアウト時間内に肯定応答を受信すると、ttdt_Revert() 関数は TT_OK を返します。そうでない場合は、失敗した応答に対する tt_message_status の戻り値、または表 A-13 に示すエラーのいずれかを返します。
表 A-13 ttdt_Revert が返す可能性のあるエラー
エラーの値 |
説明 |
---|---|
ttsession プロセスを使用できません。ToolTalk サービスは、ttsession が実行されていない場合はその再起動を試みます。このエラーは、ToolTalk サービスがインストールされていないか正しくインストールされていないかのどちらかを示します。 |
|
指定されたプロセス識別子が旧式か、無効です。 |
|
オペレーションを実行するのに十分なメモリがありません。 |
|
ToolTalk サービスが受信したメッセージの数が、正しく処理可能なアクティブ・メッセージの最大数 (2000) に達しました。 |
|
ToolTalk サービスが、このオペレーションに必要な ToolTalk データベースにアクセスできませんでした。 |
|
ToolTalk サービスが、指定された ToolTalk データベースを予期した場所で見つけることができませんでした。 |
|
指定されたタイムアウト時間内に応答を受信しませんでした。 |
|
要求が無視されました。しかしハンドラは、特定のエラー・ステータスの代わりに失敗した応答に対する tt_message_status の戻り値を TT_OK に設定します。 |
|
パス名が NULL か、ToolTalk エラー・ポインタです。 |