58 lines
1.3 KiB
Plaintext
58 lines
1.3 KiB
Plaintext
// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
|
|
// SPDX-FileCopyrightText: 2025 Jorrit Rouwe
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
#include <TestFramework.h>
|
|
#include <Utils/Log.h>
|
|
#include <cstdarg>
|
|
|
|
#include <Cocoa/Cocoa.h>
|
|
|
|
// Trace to TTY
|
|
void TraceImpl(const char *inFMT, ...)
|
|
{
|
|
// Format the message
|
|
va_list list;
|
|
va_start(list, inFMT);
|
|
char buffer[1024];
|
|
vsnprintf(buffer, sizeof(buffer), inFMT, list);
|
|
va_end(list);
|
|
|
|
// Log to the console
|
|
printf("%s\n", buffer);
|
|
}
|
|
|
|
void Alert(const char *inFMT, ...)
|
|
{
|
|
// Format the message
|
|
va_list list;
|
|
va_start(list, inFMT);
|
|
char buffer[1024];
|
|
vsnprintf(buffer, sizeof(buffer), inFMT, list);
|
|
va_end(list);
|
|
|
|
Trace("Alert: %s", buffer);
|
|
|
|
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
|
|
alert.messageText = [NSString stringWithCString: buffer encoding: NSUTF8StringEncoding];
|
|
[alert runModal];
|
|
}
|
|
|
|
void FatalError [[noreturn]] (const char *inFMT, ...)
|
|
{
|
|
// Format the message
|
|
va_list list;
|
|
va_start(list, inFMT);
|
|
char buffer[1024];
|
|
vsnprintf(buffer, sizeof(buffer), inFMT, list);
|
|
va_end(list);
|
|
|
|
Trace("Fatal Error: %s", buffer);
|
|
|
|
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
|
|
alert.messageText = [NSString stringWithCString: buffer encoding: NSUTF8StringEncoding];
|
|
[alert runModal];
|
|
|
|
exit(1);
|
|
}
|