Tt_message ttdt_file_notice( Tt_message context, Tttk_op op, T_scope scope, const char * pathname, int send_and_destroy );
ttdt_file_notice() 関数は、ファイルに関する標準 ToolTalk 通知を作成し、必要に応じて送信します。Created、Deleted、Moved、Reverted、Saved、Modified の 6 種類の標準ファイル通知を作成するには、この関数を使用します。
ttdt_file_event() 関数は、ttdt_file_notice() 関数よりもハイレベルなインタフェースです。Moved 通知以外のすべての通知を送信する場合は、この関数を使用するようにしてください。
context パラメータがゼロ以外の値のとき、このルーチンによって作成されるメッセージは、スロット名が ENV_ で始まるすべてのコンテキストを継承します。
この関数は指定の op パラメータと scope パラメータで通知を作成し、そのファイル属性を pathname パラメータに設定します。
send_and_destroy パラメータを設定すると、この関数はメッセージを送信してから破棄します。
send_and_destroy パラメータの値が false の場合、作成されたメッセージが返されます。send_and_destroy パラメータの値が true の場合、ゼロが返されます。
エラーが発生すると、エラー・ポインタが返されます。Tt_status を調べるには、tt_ptr_error を使用します。表 A-7 では、この関数が返す可能性のあるエラーについて説明します。
表 A-7 ttdt_file_notice が返す可能性のあるエラー
エラーの値 |
説明 |
---|---|
ttsession プロセスが存在しません。ToolTalk サービスは、ttsession が実行されていない場合はその再起動を試みます。このエラーは、ToolTalk サービスがインストールされていないか正しくインストールされていないかのどちらかを示します。 |
|
指定されたプロセス識別子が旧式か、無効です。 |
|
オペレーションを実行するのに十分なメモリがありません。 |
|
ToolTalk サービスが受信したメッセージの数が、正しく処理可能なアクティブ・メッセージの最大数 (2000) に達しました。 |
|
ToolTalk サービスが、このオペレーションに必要な ToolTalk データベースにアクセスできませんでした。 |
|
ToolTalk サービスが、指定された ToolTalk データベースを予期した場所で見つけることができませんでした。 |
|
オペレーションが移動され、send_and_destroy パラメータの値が true です。 |
|
パス名が NULL か、ToolTalk エラー・ポインタでした。 |