MeshLib C++ Docs
Loading...
Searching...
No Matches
MRLog.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshFwd.h"
4#include "MRPch/MRBindingMacros.h"
5
6#include <filesystem>
7
8namespace spdlog
9{
10class logger;
11namespace sinks { class sink; }
12using sink_ptr = std::shared_ptr<sinks::sink>;
13}
14
15namespace MR
16{
17
20
23{
24public:
26
28 MRMESH_API const std::shared_ptr<spdlog::logger>& getSpdLogger() const;
29
31 MRMESH_API std::string getDefaultPattern() const;
32
34 MRMESH_API void addSink( const spdlog::sink_ptr& sink );
36
38 MRMESH_API std::filesystem::path getLogFileName() const;
39private:
40 Logger();
41 std::shared_ptr<spdlog::logger> logger_;
42};
43
45
46}
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:80
Make default spd logger.
Definition MRLog.h:23
MRMESH_API void addSink(const spdlog::sink_ptr &sink)
adds custom sink to logger
MRMESH_API std::filesystem::path getLogFileName() const
return filename of first found file sink, if there is no one, returns {}
MRMESH_API void removeSink(const spdlog::sink_ptr &sink)
static MRMESH_API Logger & instance()
MRMESH_API const std::shared_ptr< spdlog::logger > & getSpdLogger() const
store this pointer if need to prolong logger life time (necessary to log something from destructors)
MRMESH_API std::string getDefaultPattern() const
returns default logger pattern
Definition MRCameraOrientationPlugin.h:8
std::array< Vector3f, 3 > MR_BIND_IGNORE
Definition MRMeshBuilderTypes.h:10
Definition MRLog.h:9
std::shared_ptr< sinks::sink > sink_ptr
Definition MRLog.h:12