eisgenerator 1.0.x
log.h
1//SPDX-License-Identifier: LGPL-3.0-or-later
21#pragma once
22#include <iostream>
23#include <string>
24
25namespace eis
26{
27
28class Log
29{
30public:
31
32 enum Level
33 {
34 DEBUG,
35 INFO,
36 WARN,
37 ERROR
38 };
39
40private:
41 bool opened = false;
42 Level msglevel = DEBUG;
43 bool endline = true;
44
45 std::string getLabel(Level level);
46
47public:
48
49 static bool headers;
50 static Level level;
51
52 Log() {}
53 Log(Level type, bool endlineI = true);
54 ~Log();
55
56 template<class T> Log &operator<<(const T &msg)
57 {
58 if(msglevel >= level)
59 {
60 std::cout<<msg;
61 opened = true;
62 }
63 return *this;
64 }
65};
66
67}
Definition log.h:29
eisgenerator Copyright (C) 2021 Carl Klemm
Definition basicmath.h:26