共通デスクトップ環境 ToolTalk メッセージの概要

tttk_message_create

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_PROCEDURETt_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 が返す可能性のあるエラー

エラーの値 

説明 

TT_ERR_NOMP

ttsession プロセスを使用できません。ToolTalk サービスは、ttsession が実行されていない場合はその再起動を試みます。このエラーは、ToolTalk サービスがインストールされていないか、正しくインストールされていないかのどちらかを示します。 

TT_ERR_PROCID

指定されたプロセス識別子が旧式か、無効です。 

TT_ERR_NOMEM

オペレーションを実行するのに十分なメモリがありません。