1
hereで書かれたMEX関数のC++ /スタンドアロンコードを探しています。 C++/MEXファイルからC++スタンドアロンを簡単に作ることは可能ですか?可能であれば、それをやり直すためのヒントがあれば、それはより速くなります。C++/MEX(Matlab)コードをスタンドアロンC++に変換できますか?
どのようにC++の型にでmexFunctionの引数を変換する例えば
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
//declare variables
mxArray *phi_out, *C_out, *label_out, *mxPhi, *C_in;
const mxArray *mxImg;
const mwSize *mdims;
double *img, *phi, *B, *mask, *C, *label;
double *F;
double usum, vsum, dthresh, lambda, rad;
int iter,countdown,display;
long dims[5];
long dimx, dimy, dimz, numdims;
LL *Lz, *Ln1, *Ln2, *Lp1, *Lp2;
LL *Sz, *Sn1, *Sn2, *Sp1, *Sp2;
LL *Lin2out, *Lout2in;
// and .....
すなわちのmxArray、LLタイプとどのようにC++でそれを定義することは何ですか?
matlabのコピーを実行するとはどういう意味ですか?コードを常時実行しているコンピュータにMatlabのコピーを持っていればいいですか?その後、それはスタンドアロンではありませんか? – Ehsan
Mexファイルは、MATLABの実行中のコピーからのみ呼び出される関数を呼び出します。たとえば、メモリを登録する関数。一方、ほとんどのmexファイルには、手作業で変更可能なわかりやすいC/C++コードが含まれています。また、標準のライブラリ呼び出しに変換することもできます。 – Mikhail