21 inline static bool IsDenormalized(
const float InValue)
26 return F.Components.Exponent == 0 &&
F.Components.Mantissa != 0;
36 inline static bool IsInfinity(
const float InValue)
41 return F.Components.Exponent == 255 &&
F.Components.Mantissa == 0;
70 return Out = Out |
Other;
125#ifndef WITH_AUDIO_BUFFERDIAGNOSTICS
127#define WITH_AUDIO_BUFFERDIAGNOSTICS (!UE_BUILD_SHIPPING)
130#if WITH_AUDIO_BUFFERDIAGNOSTICS
131#define AUDIO_CHECK_BUFFER(BUFFER)\
132 static FCheckedBufferState PREPROCESSOR_JOIN(BufferCheck, __LINE__)(__LINE__,TEXT(__FILE__),TEXT(PREPROCESSOR_TO_STRING(BUFFER)));\
133 if (!PREPROCESSOR_JOIN(BufferCheck, __LINE__).DoCheck(BUFFER) )\
135 PREPROCESSOR_JOIN(BufferCheck, __LINE__).FailedBufferCheckImpl(TEXT(""));\
138#define AUDIO_CHECK_BUFFER_NAMED(BUFFER,NAME)\
139 static FCheckedBufferState PREPROCESSOR_JOIN(BufferCheck, __LINE__)(__LINE__,TEXT(__FILE__),NAME);\
140 if (!PREPROCESSOR_JOIN(BufferCheck, __LINE__).DoCheck(BUFFER) )\
142 PREPROCESSOR_JOIN(BufferCheck, __LINE__).FailedBufferCheckImpl(TEXT(""));\
145#define AUDIO_CHECK_BUFFER_NAMED_MSG(BUFFER,NAME,MSG,...)\
146 static FCheckedBufferState PREPROCESSOR_JOIN(BufferCheck, __LINE__)(__LINE__,TEXT(__FILE__),NAME);\
147 if (!PREPROCESSOR_JOIN(BufferCheck, __LINE__).DoCheck(BUFFER))\
149 PREPROCESSOR_JOIN(BufferCheck, __LINE__).FailedBufferCheckImpl(MSG,__VA_ARGS__);\
152 #define AUDIO_CHECK_BUFFER_NAMED(BUFFER,NAME)
153 #define AUDIO_CHECK_BUFFER(BUFFER)
154 #define AUDIO_CHECK_BUFFER_NAMED_MSG(BUFFER,NAME,MSG,...)
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
short * CheckBuffer
Definition binka_ue_decode_test.cpp:33
Definition ArrayView.h:139
Definition AssetRegistryState.h:50
NO_LOGGING.
Definition AudioMixerPlatformAndroid.cpp:53
int32 FindNan(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:36
FString ToDelimitedString(const ECheckBufferFlags InEnum)
Definition BufferDiagnostics.cpp:420
int32 FindDenormalized(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:14
bool ContainsDenormalized(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:19
ECheckBufferFlags & operator|=(ECheckBufferFlags &Out, const ECheckBufferFlags Other)
Definition BufferDiagnostics.h:68
EBufferCheckBehavior
Definition BufferDiagnostics.h:90
bool ContainsNan(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:41
int32 FindInfinity(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:25
ECheckBufferFlags operator&(const ECheckBufferFlags A, const ECheckBufferFlags B)
Definition BufferDiagnostics.h:73
ECheckBufferFlags
Definition BufferDiagnostics.h:55
ECheckBufferFlags operator|(const ECheckBufferFlags A, const ECheckBufferFlags B)
Definition BufferDiagnostics.h:63
bool ContainsInfinity(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:30
Definition BufferDiagnostics.h:98
SIGNALPROCESSING_API bool DoCheck(TArrayView< const float > InBuffer)
Definition BufferDiagnostics.cpp:154
ECheckBufferFlags CheckFlags
Definition BufferDiagnostics.h:109
int32 Line
Definition BufferDiagnostics.h:107
EBufferCheckBehavior Behavior
Definition BufferDiagnostics.h:111
ECheckBufferFlags FailFlags
Definition BufferDiagnostics.h:110
static FCriticalSection ListCs
Definition BufferDiagnostics.h:100
const TCHAR * File
Definition BufferDiagnostics.h:108
SIGNALPROCESSING_API void FailedBufferCheckImpl(const TCHAR *InFormat,...) const
Definition BufferDiagnostics.cpp:170
static void ForEach(TFunctionRef< void(FCheckedBufferState &)> InCmd)
Definition BufferDiagnostics.cpp:144
FCheckedBufferState * Next
Definition BufferDiagnostics.h:105
static FCheckedBufferState * Head
Definition BufferDiagnostics.h:101
const TCHAR * Name
Definition BufferDiagnostics.h:106