이 파일의 문서화 페이지로 가기
28 #ifndef _AK_AKASSERT_H_
29 #define _AK_AKASSERT_H_
31 #if defined(__EMSCRIPTEN__)
35 #if defined( _DEBUG ) && !(defined AK_DISABLE_ASSERTS)
36 #ifndef AK_ENABLE_ASSERTS
37 #define AK_ENABLE_ASSERTS
41 #ifdef AK_ENABLE_ASSERTS
43 #ifndef AK_ASSERT_HOOK
45 const char * in_pszExpression,
46 const char * in_pszFileName,
49 #define AK_ASSERT_HOOK
53 #if !defined( AKASSERT )
56 #if defined( AK_ENABLE_ASSERTS )
59 #if defined(__EMSCRIPTEN__)
60 #define AKASSERT(Condition) assert(Condition)
63 #define AKASSERT(Condition) ((Condition) ? ((void) 0) : g_pAssertHook( #Condition, __FILE__, __LINE__) )
66 #define AKVERIFY AKASSERT
69 #define AKASSERTD AKASSERT
71 #define AKASSERTD(Condition) ((void)0)
74 #else // defined( AK_ENABLE_ASSERTS )
76 #define AKASSERT(Condition) do { switch ( 0 ) { case 0: break; default: if ( !( Condition ) ) {} } } while ( 0 )
78 #define AKVERIFY(x) ((void)(x))
81 #define AKASSERTD AKASSERT
83 #define AKASSERTD(Condition) ((void)0)
86 #endif // defined( AK_ENABLE_ASSERTS )
88 #define AKASSERT_RANGE(Value, Min, Max) (AKASSERT(((Value) >= (Min)) && ((Value) <= (Max))))
90 #define AKASSERTANDRETURN( __Expression, __ErrorCode )\
93 AKASSERT(__Expression);\
97 #define AKASSERTPOINTERORFAIL( __Pointer ) AKASSERTANDRETURN( __Pointer != NULL, AK_Fail )
98 #define AKASSERTSUCCESSORRETURN( __akr ) AKASSERTANDRETURN( __akr == AK_Success, __akr )
100 #define AKASSERTPOINTERORRETURN( __Pointer ) \
101 if ((__Pointer) == NULL)\
103 AKASSERT((__Pointer) == NULL);\
107 #if defined( AK_WIN ) && ( _MSC_VER >= 1600 )
109 #define AKSTATICASSERT( __expr__, __msg__ ) static_assert( (__expr__), (__msg__) )
112 #define AKSTATICASSERT( __expr__, __msg__ ) typedef char __AKSTATICASSERT__[(__expr__)?1:-1]
115 #endif // ! defined( AKASSERT )
117 #ifdef AK_ENABLE_ASSERTS
121 #define DEFINEDUMMYASSERTHOOK void AkAssertHookFunc( \
122 const char* in_pszExpression,\
123 const char* in_pszFileName,\
128 AkAssertHook g_pAssertHook = AkAssertHookFunc;
130 #define DEFINEDUMMYASSERTHOOK
#define AKSOUNDENGINE_API
#define AK_CALLBACK(_type, _name)
void(* AkAssertHook)(const char *in_pszExpression, const char *in_pszFileName, int in_lineNumber)
지원이 필요하신가요?
질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!
지원 페이지를 방문해 주세요
작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.
프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.
Wwise를 시작해 보세요