カメラのパン・チルト・フォーカス等の操作を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 件のコメント:
コメントを投稿