diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-07-08 15:33:31 +0100 |
---|---|---|
committer | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-07-08 15:33:31 +0100 |
commit | 4c4d605d10109e02708984755405bbe0947ef5c4 (patch) | |
tree | 1d5ffe7909b24b6c79fd444b420741e85f6c2b57 /NorthstarDedicatedTest/logging.cpp | |
parent | 8dfb8e866119f653802609b24165b0458149c4cc (diff) | |
download | NorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.tar.gz NorthstarLauncher-4c4d605d10109e02708984755405bbe0947ef5c4.zip |
initial commit
Diffstat (limited to 'NorthstarDedicatedTest/logging.cpp')
-rw-r--r-- | NorthstarDedicatedTest/logging.cpp | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/NorthstarDedicatedTest/logging.cpp b/NorthstarDedicatedTest/logging.cpp new file mode 100644 index 00000000..021613d9 --- /dev/null +++ b/NorthstarDedicatedTest/logging.cpp @@ -0,0 +1,52 @@ +#include "pch.h" +#include "logging.h" +#include "context.h" +#include "dedicated.h" +#include <vector> +#include <iostream> +#include <chrono> + +std::vector<LoggingSink> loggingSinks; + +void Log(Context context, char* fmt, ...) +{ + va_list args; + va_start(args, fmt); + + Log(context, fmt, args); + va_end(args); +} + +void Log(Context context, char* fmt, va_list args) +{ + char buf[1024]; + vsnprintf_s(buf, _TRUNCATE, fmt, args); + + for (LoggingSink& sink : loggingSinks) + sink(context, fmt); +} + +void AddLoggingSink(LoggingSink sink) +{ + loggingSinks.push_back(sink); +} + +// default logging sink +void DefaultLoggingSink(Context context, char* message) +{ + time_t now = time(0); + tm* localTime = localtime(&now); + char timeBuf[10]; + strftime(timeBuf, sizeof(timeBuf), "%X", localTime); + + std::cout << "[" << timeBuf << "] "; + if (context != NONE) + std::cout << "[" << GetContextName(context) << "] "; + + std::cout << message; + + if (!IsDedicated()) + { + + } +}
\ No newline at end of file |