45 lines
997 B
C++
45 lines
997 B
C++
#ifndef __UT_LOG_INITOR_HPP__
|
|
#define __UT_LOG_INITOR_HPP__
|
|
|
|
#include <unitree/common/log/log_policy.hpp>
|
|
#include <unitree/common/log/log_store.hpp>
|
|
#include <unitree/common/log/log_logger.hpp>
|
|
|
|
namespace unitree
|
|
{
|
|
namespace common
|
|
{
|
|
class LogInitor
|
|
{
|
|
public:
|
|
explicit LogInitor();
|
|
~LogInitor();
|
|
|
|
void Init(const std::string& configFileName, bool stdoutDefault = false);
|
|
Logger* GetLogger(const std::string& tag);
|
|
|
|
void Final();
|
|
|
|
void ParseConf(Any json);
|
|
void SetStdoutPolicy();
|
|
void InitLogger();
|
|
|
|
private:
|
|
std::set<std::string> mStoreNames;
|
|
std::vector<LogPolicyPtr> mPolicis;
|
|
std::vector<LogStorePolicyPtr> mStorePolicis;
|
|
std::map<std::string, LoggerPtr> mLoggerMap;
|
|
};
|
|
|
|
using LogInitorPtr = std::shared_ptr<LogInitor>;
|
|
|
|
void LogInit(const std::string& configFileName = "", bool stdoutDefault = false);
|
|
void LogFinal();
|
|
|
|
Logger* GetLogger(const std::string& tag);
|
|
|
|
}
|
|
}
|
|
|
|
#endif//__UT_LOG_INITOR_HPP__
|