システムを更新する C++ プログラムがあります。私がすべてをC++で書いたとき、それはこのように少し見えました
System S; //initialize a System object 'S'
while (notFinished)
{
S.update1(inputVars1);
S.update2(inputVars2);
}
ここで、matlab から個々の更新関数を呼び出し、(c++ で記述された) アクセス関数を使用して、matlab でデバッグするときにいつでもプログラムの状態を表示できるようにしたいと考えています。
そのため、matlab は「システム」オブジェクトをインスタンス化するために何かを呼び出す必要があり、その後、元のシステム オブジェクトから個々のシステム メソッドを呼び出す必要があります。
Initialize
update1
update2
現在の状態に関する情報を取得する別の mex ファイルをコンパイルするとしますgetState
。そして、いくつかのmatlabコードを書いてください...
%matlab main
S = Initalize(); %mex file
while (notFinished)
update1(S); %mex file
keyboard; % access state information using "getState" mex function
update2(S); %mex file
keyboard; % access state information using "getState" mex function
end
これにより、Matlab で C++ プログラム アルゴリズムを呼び出してデバッグできるようになりますか、それともこの問題全体を解決する別の方法がありますか?