2013年2月13日水曜日

mbed-rpcを読んでみた。

カメラのパン・チルト・フォーカス等の操作をRPCで出来ればテストに便利かなと使い方を理解するためにmbed-rpcを読んでみた。

RPC対応のクラスを作るには RpcClasses.h が参考になりそう。

変数への代入・読み出しだけなら RPCVariable を使えば1行追加するだけです。
簡単な関数を呼び出すだけなら RPCFunction が使えます。もちろん、引数を渡したり返り値を得ることが出来ます。可変長引数も可能です。

その他に RPC::construct で クラスではなくて インスタンスを作成して登録できるらしい。これはまだ試してない。

使用例:
RPC_Serial/main.cpp

(2013/2/13)

RPC::constructを試してみた。
RPC::construct<クラス名, 引数1の型, 引数2の型, ...>(引数1, 引数2,...)のように呼びます。
使用例ではRpcLEDクラスをRPC::constructでインスタンス化(オブジェクト化)しています。
クラスのメンバ関数にget_rpc_class()関数を書く必要はありません。

使用例:

RPC_Serial/main.cpp

RPC::call() からのリストではインスタンスとクラスの区別がつかないが、
/RPC/objects でインスタンス(オブジェクト)だけを表示出来ます。
/RPC/clear でインスタンスを全て削除します。

(2013/2/14追加)
---

0 件のコメント: