- Updated namespaces from `Ghost.UnitTest` to `Ghost.Graphics.Test` across multiple files. - Refactored `GraphicsTestWindow` to use a new `RenderSystem` configuration. - Removed deprecated `Logger` and `SerializationTest` classes. - Improved memory management in D3D12 components, including resource allocation and cleanup. - Added `[SupportedOSPlatform]` attributes to specify Windows version compatibility. - Updated `.editorconfig` settings and project references for consistency. - Enabled `nativeDebugging` in `launchSettings.json`.
52 lines
913 B
C#
52 lines
913 B
C#
namespace Ghost.Graphics.Test.Models;
|
|
|
|
public enum LogLevel
|
|
{
|
|
Info,
|
|
Warning,
|
|
Error,
|
|
Debug
|
|
}
|
|
|
|
internal struct LogItem
|
|
{
|
|
public LogLevel Level
|
|
{
|
|
get; init;
|
|
}
|
|
public string Message
|
|
{
|
|
get; init;
|
|
}
|
|
public DateTime Timestamp
|
|
{
|
|
get; init;
|
|
}
|
|
public string? StackTrace
|
|
{
|
|
get; init;
|
|
}
|
|
|
|
public LogItem(LogLevel level, string message, string? stackTrace = null)
|
|
{
|
|
Level = level;
|
|
Message = message;
|
|
StackTrace = stackTrace;
|
|
Timestamp = DateTime.Now;
|
|
}
|
|
|
|
public override readonly string ToString()
|
|
{
|
|
return $"{Timestamp:HH:mm:ss.fff} [{Level}] {Message}";
|
|
}
|
|
|
|
public readonly string ToStringWithStackTrace()
|
|
{
|
|
if (string.IsNullOrEmpty(StackTrace))
|
|
{
|
|
return ToString();
|
|
}
|
|
|
|
return $"{ToString()}\n{StackTrace}";
|
|
}
|
|
} |