16 lines
459 B
C++
16 lines
459 B
C++
|
|
#pragma once
|
||
|
|
#include <string>
|
||
|
|
#include <functional>
|
||
|
|
#include <mutex>
|
||
|
|
|
||
|
|
class Logger {
|
||
|
|
public:
|
||
|
|
static Logger& get();
|
||
|
|
void add_log(const std::string& log, const std::function<void(const std::string&)> callback);
|
||
|
|
void log(const std::string& log, const std::string& text);
|
||
|
|
private:
|
||
|
|
static Logger global;
|
||
|
|
std::mutex logMutex;
|
||
|
|
std::unordered_map<std::string, std::function<void(const std::string&)>> logs;
|
||
|
|
};
|