これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションのXNUMXつを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドdbus-binding-toolです。
プログラム:
NAME
dbus-binding-tool-C言語のGLibバインディング生成ユーティリティ。
SYNOPSIS
dbus バインディング ツール [--力][--助けて][--無視-サポートされていません][--mode =かなり|glib-
client |glib-server][--出力=file][--プレフィックス=シンボルプレフィックス][--バージョン] [file...]
DESCRIPTION
dbus バインディング ツール D-Busを介してGObjectを公開するために使用されます。 入力として、 dbus バインディング ツール 使用されます
D-BusIntrospectionXMLファイル。 出力として、クライアント側またはサーバー側のバインディングは
生成されます。 この出力は、リモートD-Busオブジェクトの使用を容易にするヘッダーファイルです。
出力は、標準出力または-で指定されたファイル名に送信されます-出力 引数。
拡張済み DESCRIPTION
以下は、次のようなオブジェクトを記述したサンプルのD-BusIntrospectionXMLファイルです。
ManyArgsという名前のXNUMXつのメソッドを公開します。
dbus バインディング ツール XML形式の注釈をサポートして、
バインディングが生成されます。
クライアント側 バインディング
クライアント側のバインディングを構築する場合、--mode=glib-クライアント 引数が使用されます。 クライアント-
サイドバインディングは、「org.freedesktop.DBus.Glib.NoReply」アノテーションをサポートしています。 これは
内で指定クライアントがへの返信を期待していないことを示すタグ
メソッド呼び出しなので、応答は送信しないでください。 これは、高速化するためによく使用されます
「out」引数がなく、メソッドが成功したかどうかわからない場合のメソッド呼び出し
バスのトラフィックを半分にするための許容できる妥協案です。 例えば:
[...]
[...]
サーバ側 バインディング
サーバー側のバインディングを構築する場合、--mode = glib-server 引数が使用されます。 また、
--プレフィックス サーバー側のバインディングを構築するときに引数を使用して、
生成された出力には、指定された値がプリフィックスされます。 サーバー側のバインディングはサポートします
次の注釈:
"org.freedesktop.DBus.GLib.CSymbol"
この注釈は、さまざまなタイプ(インターフェイス、
メソッドなど)、D-Busが生成する名前と異なる場合。
[...]
[...]
"org.freedesktop.DBus.GLib.Async"
このアノテーションは、メソッドの実装を非同期関数としてマークします。
すぐに応答を返すことはありませんが、後で応答を送信します
通話を完了します。 これは、メソッド呼び出しが可能な非ブロッキングサービスを実装するために使用されます
時間がかかる。
メソッドが非同期の場合、関数プロトタイプは異なります。 それが必要です
関数は次の規則に準拠しています。
・関数はgboolean型の値を返す必要があります。 成功した場合はTRUE、FALSEの場合はFALSE
さもないと。
・最初のパラメータは、オブジェクトのインスタンスへのポインタです。
・オブジェクトインスタンスポインタの後には、メソッド入力値が続きます。
・最後のパラメーターは(DBusGMethodInvocation *)である必要があります。 これは送信時に使用されます
dbus_g_method_returnまたはを呼び出して、クライアントに返される応答メッセージ
dbus_g_method_return_error。
例:
[...]
[...]
"org.freedesktop.DBus.GLib.Const"
この属性は「out」にのみ適用できますノード、およびパラメータを指定します
返送時にコピーされていません。 たとえば、これは(char **)から's'引数を変換します
(const char **)に変換すると、引数がD-Busによって解放されなくなります。
メッセージが送信されます。 例えば:
"org.freedesktop.DBus.GLib.ReturnVal"
この属性は「out」にのみ適用できますノード、および期待される機能を変更します
サイン。 現在、「」または「エラー」のXNUMXつの値に設定できます。 でマークされた引数
この属性は、ポインター引数ではなく、関数の戻り値によって返されます。
属性の値が空の文字列の場合、(GError *)引数も省略されるため、
エラー値を返す標準的な方法はありません。 これはインターフェースに非常に便利です
既存のAPIと一致させることが可能であるため、既存のコードを使用します。 属性の値が
「エラー」の場合、最後の引数は通常どおり(GError *)です。 例えば:
OPTIONS
次のオプションがサポートされています。
- 力
ソースよりも新しいタイムスタンプで出力ファイルがすでに存在する場合は、出力ファイルを上書きします
ファイル。
- 助けて
使用情報を表示します。
--無視-サポートされていません
設定されている場合、サポートされていない署名パラメータは無視されます。
--mode =Pretty | glib-client | glib-server
値が「glib-client」の場合、クライアントバインディングが生成されます。 値が
「glib-server」の場合、サーバーバインディングが生成されます。 値が「きれい」の場合、
出力は、より人間が読める形式になっています。
--output =file
出力を指定します file.
--prefix =シンボルプレフィックス
生成された出力の関数には、接頭辞として シンボルプレフィックス の値です。
- バージョン
のバージョン番号を表示します dbus バインディング ツール
オペランド
次のオペランドがサポートされています。
file 含めるXNUMXつ以上の入力D-BusIntrospectionXMLファイルのリスト
生成された出力。
onworks.netサービスを使用してdbus-binding-toolをオンラインで使用する