@@ -48,9 +48,7 @@ class TyraDebug {
|
|||||||
(void)expander{0, (void(ss << std::forward<Args>(args)), 0)...};
|
(void)expander{0, (void(ss << std::forward<Args>(args)), 0)...};
|
||||||
|
|
||||||
if (Tyra::Info::writeLogsToFile) {
|
if (Tyra::Info::writeLogsToFile) {
|
||||||
auto* logFile = getLogFile();
|
writeInLogFile(&ss);
|
||||||
*logFile << ss.str();
|
|
||||||
logFile->flush();
|
|
||||||
} else {
|
} else {
|
||||||
printf("%s", ss.str().c_str());
|
printf("%s", ss.str().c_str());
|
||||||
}
|
}
|
||||||
@@ -65,9 +63,7 @@ class TyraDebug {
|
|||||||
ss1 << "|\n";
|
ss1 << "|\n";
|
||||||
|
|
||||||
if (Tyra::Info::writeLogsToFile) {
|
if (Tyra::Info::writeLogsToFile) {
|
||||||
auto* logFile = getLogFile();
|
writeInLogFile(&ss1);
|
||||||
*logFile << ss1.str();
|
|
||||||
logFile->flush();
|
|
||||||
} else {
|
} else {
|
||||||
printf("%s", ss1.str().c_str());
|
printf("%s", ss1.str().c_str());
|
||||||
}
|
}
|
||||||
@@ -80,9 +76,7 @@ class TyraDebug {
|
|||||||
ss2 << "====================================\n\n";
|
ss2 << "====================================\n\n";
|
||||||
|
|
||||||
if (Tyra::Info::writeLogsToFile) {
|
if (Tyra::Info::writeLogsToFile) {
|
||||||
auto* logFile = getLogFile();
|
writeInLogFile(&ss2);
|
||||||
*logFile << ss2.str();
|
|
||||||
logFile->flush();
|
|
||||||
} else {
|
} else {
|
||||||
printf("%s", ss2.str().c_str());
|
printf("%s", ss2.str().c_str());
|
||||||
}
|
}
|
||||||
@@ -92,8 +86,7 @@ class TyraDebug {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static std::unique_ptr<std::ofstream> logFile;
|
static void writeInLogFile(std::stringstream* ss);
|
||||||
static std::ofstream* getLogFile();
|
|
||||||
|
|
||||||
template <typename Arg, typename... Args>
|
template <typename Arg, typename... Args>
|
||||||
static void writeAssertLines(Arg&& arg, Args&&... args) {
|
static void writeAssertLines(Arg&& arg, Args&&... args) {
|
||||||
@@ -105,9 +98,7 @@ class TyraDebug {
|
|||||||
0, (void(ss << "| " << std::forward<Args>(args) << "\n"), 0)...};
|
0, (void(ss << "| " << std::forward<Args>(args) << "\n"), 0)...};
|
||||||
|
|
||||||
if (Tyra::Info::writeLogsToFile) {
|
if (Tyra::Info::writeLogsToFile) {
|
||||||
auto* logfile = getLogFile();
|
writeInLogFile(&ss);
|
||||||
*logfile << ss.str();
|
|
||||||
logFile->flush();
|
|
||||||
} else {
|
} else {
|
||||||
printf("%s", ss.str().c_str());
|
printf("%s", ss.str().c_str());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,16 +10,11 @@
|
|||||||
|
|
||||||
#include "debug/debug.hpp"
|
#include "debug/debug.hpp"
|
||||||
|
|
||||||
std::unique_ptr<std::ofstream> TyraDebug::logFile;
|
void TyraDebug::writeInLogFile(std::stringstream* ss) {
|
||||||
|
std::ofstream logFile;
|
||||||
std::ofstream* TyraDebug::getLogFile() {
|
logFile.open(Tyra::FileUtils::fromCwd("log.txt"),
|
||||||
if (logFile) {
|
|
||||||
return logFile.get();
|
|
||||||
} else {
|
|
||||||
logFile = std::make_unique<std::ofstream>();
|
|
||||||
logFile->open(Tyra::FileUtils::fromCwd("log.txt"),
|
|
||||||
std::ofstream::out | std::ofstream::app);
|
std::ofstream::out | std::ofstream::app);
|
||||||
return logFile.get();
|
logFile << ss->str();
|
||||||
|
logFile.flush();
|
||||||
|
// logFile.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Tyra
|
|
||||||
|
|||||||
Reference in New Issue
Block a user