Tt_message tttk_message_create( Tt_message context, Tt_class the_class, Tt_scope the_scope, const char * handler, const char * op, Tt_message_callback callback);
tttk_message_create() 関数は、規約に従ったメッセージを作成します。この関数を使用すれば、継承されたコンテキストをあるメッセージから別のメッセージに伝達するメッセージを簡単に作成できます。
tttk_message_create() 関数はメッセージを作成し、スロット名が ENV_ で始まる context からすべてのコンテキスト・スロットを新しいメッセージ上にコピーします。作成されたメッセージには、the_class パラメータに指定された Tt_class 値と the_scopee パラメータに指定された Tt_scope 値が設定されます。
handler パラメータが NULL の場合、メッセージには TT_PROCEDURE の Tt_address が設定されます。handler パラメータが NULL でない場合は、メッセージは TT_HANDLER を経由して procid に送信されます。
op 引き数が NULL でない場合、その値にはメッセージの op 引き数が設定されます。
コールバック引き数が NULL でない場合、その値がメッセージ・コールバックとしてメッセージに追加されます。
正常終了時には、tttk_message_create() 関数は作成した Tt_message を返します。これは、他の Tt_message と同じ方法で変更、送信、および破棄できます。
エラーが発生すると、エラー・ポインタが返されます。Tt_status を調べるには、tt_ptr_error を使用します。表 A-28 は、返される可能性のあるエラーの一覧です。
表 A-28 tttk_message_create が返す可能性のあるエラー
エラーの値 |
説明 |
---|---|
ttsession プロセスを使用できません。ToolTalk サービスは、ttsession が実行されていない場合はその再起動を試みます。このエラーは、ToolTalk サービスがインストールされていないか、正しくインストールされていないかのどちらかを示します。 |
|
指定されたプロセス識別子が旧式か、無効です。 |
|
オペレーションを実行するのに十分なメモリがありません。 |