Tt_message (*Ttmedia_load_pat_cb)( Tt_message msg, void * clientdata, Tttk_op op, Tt_status diagnosis, unsigned char * contents, int len, char * file, char * docname ); Tt_status ttmedia_ptype_declare( const char * ptype, int base_opnum, Ttmedia_load_pat_cb cb, void * clientdata, int declare );
ttmedia_ptype_declare() 関数は、Media Exchange メディア・エディタの ptype を宣言します。この関数は、特定のメディア型用の Media Exchange メッセージ・インタフェースを実装するエディタを初期化します。
エディタが ptype でサポートされる種類のドキュメントを編集するように要求される場合、この関数は cb 引き数を呼び出します。
この関数は、ptype が含まれていると想定される一連のシグニチャーに、ツールキット内部のオペレーション番号 (opnum) コールバックをインストールします。ツールキット内部の opnum コールバックは、これらのシグニチャーのいずれかに一致する要求を受信すると、clientdata を cb 引き数に渡します。opnum は、base_opnum から始まり、ゼロか 1000 の倍数でなければなりません。
declare 引き数が true のとき、この関数は次を呼び出します。
tt_ptype_declare( ptype )
ptype が複数の異なるメディア型を実現する場合、ttmedia_ptype_declare() 関数を 2 回以上呼び出すことができます。base_opnum には、各呼び出しで異なる値を指定しなければなりません。
ttmedia_ptype_declare() 関数は何回も呼び出すことができますが、declare 引き数を「true」に設定できるのは 1 回だけです。
表 A-25 は、Ttmedia_load_pat_cb メッセージが取るパラメータの一覧です。
表 A-25 Ttmedia_load_pat_cb メッセージが取るパラメータ
メッセージが正常に処理されると、コールバックはゼロを返します。処理中にエラーが発生した場合は、コールバックは Tt_message に伝えられたエラー・ポインタを返します。
コールバックがメッセージ msg を処理せず、diagnosis 引き数の値が TT_OK でない場合、コールバックはメッセージを返し、ツールキットは TT_CALLBACK_CONTINUE ルーチンを呼び出しスタックに渡してメッセージを他のコールバックに提供するか、メッセージを tt_message_receive() 呼び出しに返します。
エラーが発生すると、この関数は表 A-26 にあるエラーのうちのいずれかを返します。
表 A-26 ttmedia_ptype_declare が返す可能性のあるエラー
エラーの値 |
説明 |
---|---|
ttsession プロセスを使用できません。ToolTalk サービスは、ttsession が実行されていない場合はその再起動を試みます。このエラーは、ToolTalk サービスがインストールされていないか、正しくインストールされていないかのどちらかを示します。 |
|
指定されたプロセス識別子が旧式か、無効です。 |
|
ToolTalk サービスが、指定された ptype を検出することができません。 |
|
渡されたポインタが、このオペレーションに適した型のオブジェクトを指していません。たとえば、文字列が必要なときにポインタは整数を指している場合などです。 |