mirror of
https://github.com/moonlight-stream/moonlight-ios.git
synced 2025-07-01 23:35:59 +00:00
62 lines
1.4 KiB
Objective-C
62 lines
1.4 KiB
Objective-C
//
|
|
// Logger.m
|
|
// Moonlight
|
|
//
|
|
// Created by Diego Waxemberg on 2/10/15.
|
|
// Copyright (c) 2015 Moonlight Stream. All rights reserved.
|
|
//
|
|
|
|
#import "Logger.h"
|
|
|
|
static LogLevel LoggerLogLevel = LOG_I;
|
|
|
|
void LogTagv(LogLevel level, NSString* tag, NSString* fmt, va_list args);
|
|
|
|
void Log(LogLevel level, NSString* fmt, ...) {
|
|
va_list args;
|
|
va_start(args, fmt);
|
|
LogTagv(level, NULL, fmt, args);
|
|
va_end(args);
|
|
}
|
|
|
|
void LogTag(LogLevel level, NSString* tag, NSString* fmt, ...) {
|
|
va_list args;
|
|
va_start(args, fmt);
|
|
LogTagv(level, tag, fmt, args);
|
|
va_end(args);
|
|
}
|
|
|
|
void LogTagv(LogLevel level, NSString* tag, NSString* fmt, va_list args) {
|
|
NSString* levelPrefix = @"";
|
|
|
|
if (level < LoggerLogLevel) {
|
|
return;
|
|
}
|
|
|
|
switch(level) {
|
|
case LOG_D:
|
|
levelPrefix = PRFX_DEBUG;
|
|
break;
|
|
case LOG_I:
|
|
levelPrefix = PRFX_INFO;
|
|
break;
|
|
case LOG_W:
|
|
levelPrefix = PRFX_WARN;
|
|
break;
|
|
case LOG_E:
|
|
levelPrefix = PRFX_ERROR;
|
|
break;
|
|
default:
|
|
levelPrefix = @"";
|
|
assert(false);
|
|
break;
|
|
}
|
|
NSString* prefixedString;
|
|
if (tag) {
|
|
prefixedString = [NSString stringWithFormat:@"%@ (%@) %@", levelPrefix, tag, fmt];
|
|
} else {
|
|
prefixedString = [NSString stringWithFormat:@"%@ %@", levelPrefix, fmt];
|
|
}
|
|
NSLogv(prefixedString, args);
|
|
}
|