私は次のMatlab「クラスデザイン」を持っています:
classdef foo
properties
a;
b;
end
methods
function obj = myFun(obj)
obj.a = 42; // some calculation takes place here
end
end
end
classdef bar
properties
foos; // this is going to be an array of foos
otherStuff;
end
methods
function obj = someFun(obj)
for i = 1:length(foos)
obj.foos(i) = obj.foos(i).myFun;
end
end
end
end
私が書いたように、1 つのオブジェクトは、そのクラス プロパティとして他のオブジェクトの配列を持ちます。
これを C コードとして書き直し、MEX で使用しようとしています。私の質問は次のとおりです。配列 foos のさまざまな要素にアクセスするにはどうすればよいですか? API 関数 mxGetProperty については知っています。この関数を使用すると、各配列エントリのプロパティ (obj.foos(i).a など) にアクセスできますが、オブジェクト全体にはアクセスできません (obj.foos(i) が必要です)。ただし、メンバー関数を呼び出すには、オブジェクト全体 (mxArray * として) が必要です。
これを行う方法はありますか?
ありがとう