made an option for logging to be synced by default instead of async
This commit is contained in:
parent
02dcf4d45c
commit
8c4f386641
|
@ -13,6 +13,7 @@ bool isNeo = false;
|
||||||
u32 screenWidth = 1280;
|
u32 screenWidth = 1280;
|
||||||
u32 screenHeight = 720;
|
u32 screenHeight = 720;
|
||||||
std::string logFilter;
|
std::string logFilter;
|
||||||
|
std::string logType = "sync";
|
||||||
bool isDebugDump = false;
|
bool isDebugDump = false;
|
||||||
|
|
||||||
bool isNeoMode() {
|
bool isNeoMode() {
|
||||||
|
@ -31,6 +32,10 @@ std::string getLogFilter() {
|
||||||
return logFilter;
|
return logFilter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string getLogType() {
|
||||||
|
return logType;
|
||||||
|
}
|
||||||
|
|
||||||
bool debugDump() {
|
bool debugDump() {
|
||||||
return isDebugDump;
|
return isDebugDump;
|
||||||
}
|
}
|
||||||
|
@ -59,6 +64,7 @@ void load(const std::filesystem::path& path) {
|
||||||
|
|
||||||
isNeo = toml::find_or<toml::boolean>(general, "isPS4Pro", false);
|
isNeo = toml::find_or<toml::boolean>(general, "isPS4Pro", false);
|
||||||
logFilter = toml::find_or<toml::string>(general, "logFilter", "");
|
logFilter = toml::find_or<toml::string>(general, "logFilter", "");
|
||||||
|
logType = toml::find_or<toml::string>(general, "logType", "sync");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (data.contains("GPU")) {
|
if (data.contains("GPU")) {
|
||||||
|
@ -100,6 +106,7 @@ void save(const std::filesystem::path& path) {
|
||||||
|
|
||||||
data["General"]["isPS4Pro"] = isNeo;
|
data["General"]["isPS4Pro"] = isNeo;
|
||||||
data["General"]["logFilter"] = logFilter;
|
data["General"]["logFilter"] = logFilter;
|
||||||
|
data["General"]["logType"] = logType;
|
||||||
data["GPU"]["screenWidth"] = screenWidth;
|
data["GPU"]["screenWidth"] = screenWidth;
|
||||||
data["GPU"]["screenHeight"] = screenHeight;
|
data["GPU"]["screenHeight"] = screenHeight;
|
||||||
data["Debug"]["DebugDump"] = isDebugDump;
|
data["Debug"]["DebugDump"] = isDebugDump;
|
||||||
|
|
|
@ -12,6 +12,7 @@ void save(const std::filesystem::path& path);
|
||||||
|
|
||||||
bool isNeoMode();
|
bool isNeoMode();
|
||||||
std::string getLogFilter();
|
std::string getLogFilter();
|
||||||
|
std::string getLogType();
|
||||||
|
|
||||||
u32 getScreenWidth();
|
u32 getScreenWidth();
|
||||||
u32 getScreenHeight();
|
u32 getScreenHeight();
|
||||||
|
|
|
@ -175,15 +175,30 @@ public:
|
||||||
using std::chrono::microseconds;
|
using std::chrono::microseconds;
|
||||||
using std::chrono::steady_clock;
|
using std::chrono::steady_clock;
|
||||||
|
|
||||||
message_queue.EmplaceWait(Entry{
|
if (Config::getLogType() == "async") {
|
||||||
.timestamp = duration_cast<microseconds>(steady_clock::now() - time_origin),
|
|
||||||
.log_class = log_class,
|
message_queue.EmplaceWait(Entry{
|
||||||
.log_level = log_level,
|
.timestamp = duration_cast<microseconds>(steady_clock::now() - time_origin),
|
||||||
.filename = filename,
|
.log_class = log_class,
|
||||||
.line_num = line_num,
|
.log_level = log_level,
|
||||||
.function = function,
|
.filename = filename,
|
||||||
.message = std::move(message),
|
.line_num = line_num,
|
||||||
});
|
.function = function,
|
||||||
|
.message = std::move(message),
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
|
||||||
|
const Entry entry = {
|
||||||
|
.timestamp = duration_cast<microseconds>(steady_clock::now() - time_origin),
|
||||||
|
.log_class = log_class,
|
||||||
|
.log_level = log_level,
|
||||||
|
.filename = filename,
|
||||||
|
.line_num = line_num,
|
||||||
|
.function = function,
|
||||||
|
.message = std::move(message),
|
||||||
|
};
|
||||||
|
ForEachBackend([&entry](auto& backend) { backend.Write(entry); });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
Loading…
Reference in New Issue