summaryrefslogtreecommitdiff
path: root/inc/logger.h
diff options
context:
space:
mode:
Diffstat (limited to 'inc/logger.h')
-rw-r--r--inc/logger.h26
1 files changed, 17 insertions, 9 deletions
diff --git a/inc/logger.h b/inc/logger.h
index 7ab3051..38527c8 100644
--- a/inc/logger.h
+++ b/inc/logger.h
@@ -9,13 +9,14 @@ enum LogLevel { DEBUG, INFO, WARNING, ERROR, CRITICAL };
class Logger
{
public:
+ static Logger* getInstance();
+
+ ~Logger();
+
/**
- * Constructor.
- * @param The file name to log to.
- * @return A new logger object.
+ * Do not allow copies.
*/
- Logger(const string &);
- ~Logger();
+ Logger(const Logger& obj) = delete;
/**
* Set the log level.
@@ -31,10 +32,17 @@ class Logger
void log(LogLevel, const string &);
private:
- LogLevel level = INFO;
- ofstream logFile;
- string levelToString(LogLevel);
- int levelToInt(LogLevel);
+ /**
+ * Constructor.
+ * @param The file name to log to.
+ * @return A new logger object.
+ */
+ Logger(const string &);
+ static Logger* logger_instance;
+ static LogLevel level;
+ static ofstream logFile;
+ static string level_to_string(LogLevel);
+ static int level_to_int(LogLevel);
};
#endif /* LOGGER_H_INCLUDED */