forkしたmbed-rpc:
mbed-rpc
クラスのメンバー関数でもRPCFunctionの(Arguments*, Reply*)タイプの関数を使えるように、rpc.h に以下の関数を追加。
template<class T, void(T::*member)(Arguments*, Reply*)> void rpc_method_caller(RPC *this_ptr, Arguments *arguments, Reply *result) { (static_cast<T*>(this_ptr)->*member)(arguments, result);
使用例:
ExtensionUnitのテスト
RpcClasses.hのRpcAnalogInクラス、RpcAnalogOutクラスがRPC::add_rpc_classで登録出来るように、Arguments.cppに以下の関数を追加。
template<> unsigned short Arguments::getArg<unsigned short>(void) { index++; char *pEnd; return strtol(argv[index], &pEnd, 10); } template<> void Reply::putData<unsigned short>(unsigned short v) { separator(); reply += sprintf(reply, "%u", v); }
(2013/2/16)
---
0 件のコメント:
コメントを投稿