MATLAB内でグローバル変数を使用せずにコールバックからデータを受信したいと考えています。これは、GUIプログラミングではなく、rossubscriber
を使用するためのものです。コールバックからデータを取得する
function [mySub] = myFunction(cloudTopic)
testHandle.a = 0;
mySub = rossubscriber(cloudTopic,{@mySub_CB,testHandle}, 'BufferSize', 30);
end
function mySub_CB(src, msg, objHandle)
objHandle.a = objHandle.a + 1
end
私は
注Mathworks社のドキュメントにこれを読んでいるので:グローバルを使用して、ほかのコールバックから 関数を情報を抽出する他の方法があります私は、次の試してみました。たとえば、コールバック関数の追加引数としてハンドル オブジェクトを渡すことができます。 コールバック関数の定義の詳細については、 コールバック定義のドキュメントを参照してください。
残念ながら、これは動作しません。 testHandleは更新されておらず、常に1が表示されます。これをどうやって行うのですか? :) testHandle
があるので