CRI ADX  Last Updated: 2024-03-21 14:32 p
エラーコールバック

サンプルのディレクトリ

/cri/pc/samples/criatomex/error_callback

サンプルで使用しているデータ

/cri/common/smpdata/criatomex/
  • SampleProject.acf
  • AtomCueSheet.avb
  • AtomCueSheet.awb

サンプルの解説

CRI Atomで発生したエラーを検知する機能として エラーコールバック を用意しています。 アプリケーション側で定義したコールバック関数を登録することができ、 エラーIDやエラーメッセージ、エラーへの対処方法をアプリケーション側で行うことができます。
#define SMP_ERROR_STR_LENGTH (256)
static CriChar8 g_smp_error_msg[SMP_ERROR_STR_LENGTH];
{
/* エラーコールバック関数の登録 */
criErr_SetCallback(user_error_callback_func);
/* ライブラリの初期化 */
criAtomEx_Initialize(NULL, NULL, 0);
:
:
:
}
/* エラーコールバック関数 */
static void user_error_callback_func(const Char8 *errid, Uint32 p1, Uint32 p2, Uint32 *parray)
{
const Char8 *errmsg;
UNUSED(parray);
/* エラー文字列の表示 */
errmsg = criErr_ConvertIdToMessage(errid, p1, p2);
criFwPrt_DebugPrintf("%s\n", errmsg);
/* アプリケーション側のグローバル領域にエラーメッセージを保存 */
/* 備考)エラーコールバックはメインスレッド以外でも発生する可能性があるため、
* グローバルな資源にアクセスする場合は排他制御に注意する必要がある。
*/
smputl_strcpy(g_smp_error_msg, errmsg);
return;
}
CriBool criAtomEx_Initialize(const CriAtomExConfig *config, void *work, CriSint32 work_size)
ライブラリの初期化
const CriChar8 * criErr_ConvertIdToMessage(const CriChar8 *errid, CriUint32 p1, CriUint32 p2)
エラーID文字列からエラーメッセージへ変換
void criErr_SetCallback(CriErrCbFunc cbf)
エラーコールバック関数の登録


エラーコールバックが発生するエラーはほとんどの場合致命的なエラーです。エラーが発生した場合は放置せず、 エラーを解決するようにしてください。


エラーへの対応方法がわからない場合は、CRIテクニカルサポート窓口へお問い合わせください。