14#ifndef LUTILS_MSGHANDLER_H_
15#define LUTILS_MSGHANDLER_H_
20#include <condition_variable>
36template<
typename UI,
typename M = std::mutex,
typename T = std::thread,
typename B =
bool>
40 typedef typename UI::t_str
t_str;
88 typedef std::lock_guard<t_mut>
t_lock;
129 template<
typename TR = UI>
typename TR::default_post_ret_type
post (
t_str const & m,
131 template<
typename TR = UI>
typename TR::post_ret_type
post (
t_str const & m,
bool levelcheck(t_str const &level) const
void message(t_str const &messagein)
std::vector< t_str > t_levels
TR::default_post_ret_type post(t_str const &m, t_str const &l)
msghandler & operator=(msghandler const &)=delete
std::lock_guard< t_mut > t_lock
static msghandler & ref()
msghandler(msghandler const &)=delete
std::unique_ptr< t_file > t_file_ptr
std::queue< E > t_container
std::condition_variable m_condition
void reopen(t_str const &)
void set(t_str const &logfile)
std::shared_ptr< t_str > t_str_ptr
void setlevel(t_str const &level, t_levels levels)
t_container< std::pair< t_str, t_str > > t_messages