mexSetTrapFlag (C および Fortran)
(削除済み) エラーに対する MEXCALLMATLAB の応答の制御
mexSetTrapFlag は削除されました。代わりに mexCallMATLABWithTrap を使用してください。詳細については、バージョン履歴を参照してください。
C 構文
#include "mex.h" void mexSetTrapFlag(int trapflag);
Fortran 構文
subroutine mexSetTrapFlag(trapflag) integer*4 trapflag
引数
trapflag制御フラグ。
0- エラーの場合は、制御が MATLAB® プロンプトに戻ります。1- エラーの場合は、制御が MEX ファイルに戻ります。
説明
mexSetTrapFlag を呼び出して、mexCallMATLAB 内のエラーに対する MATLAB の応答を制御します。
mexSetTrapFlag を呼び出さない場合は、mexCallMATLAB への呼び出しで MATLAB がエラーを検出すると、MATLAB は自動的に MEX ファイルを終了し、制御を MATLAB プロンプトに戻します。trapflag を 0 に設定して mexSetTrapFlag を呼び出すことは、mexSetTrapFlag をまったく呼び出さないことと同じです。
mexSetTrapFlag を呼び出し、trapflag を 1 に設定した場合、MATLAB が mexCallMATLAB への呼び出しでエラーを検出しても、MATLAB は自動的に MEX ファイルを終了しません。代わりに、MATLAB は mexCallMATLAB を呼び出した直後に制御を MEX ファイル内の行に戻します。MEX ファイルはその後、エラーへの適切な応答を担当します。
mexSetTrapFlag を呼び出した場合、設定した trapflag の値は MEX ファイル内での mexSetTrapFlag の次の呼び出しまで有効になります。または、mexSetTrapFlag への呼び出しがこれ以上行われない場合は、MEX ファイルが終了するまで有効になります。MEX ファイルに定義されているルーチンが別の MEX ファイルを呼び出す場合、MATLAB は以下を行います。
trapflagの現在の値を最初の MEX ファイルに保存します。そのファイル内で、
0に初期化されたtrapflagを使用して 2 番目の MEX ファイルを呼び出します。2 番目の MEX ファイルが存在するときは、最初の MEX ファイル内に保存されている
trapflagの値が復元されます。