代替案として、coder.ceval 関数を利用する方法があります。この関数は、codegen 関数実行時に、指定した外部の C ソースコードを呼び出します。これにより、ユーザ側で用意した C 関数を呼び出すようにプログラミングし、コード生成と MATLAB 上の実行を切り替えることが可能です。
実際に行うには、下記の手順を実施します。
1. MEX-ファイルのコードを、外部から呼び出せるようなCソースコードに変換
2. MATLAB-ファイル(CallMexsamp.m)を下記のように変換
例えば、下記のように MEX 関数を呼び出している場合、
B = timestwo(a)
下記のように書き換えてから、Cコード生成を行います。
B = coder.ceval(‘timestwo’,a)
3. codegen でMATLAB-ファイルをコード生成
coder.ceval 関数の詳細については、下記 URL をご覧ください。
・MATLAB Coder 関数リファレンス:coder.ceval
なお、coder.ceval 関数の戻り値は、1つでかつスカラである必要があります。