AnCH Framework
0.1
Another C++ Hack Framework
Loading...
Searching...
No Matches
lowPriorityWriter.hpp
1
/*
2
ANCH Framework: ANother C++ Hack is a C++ framework based on C++11 standard
3
Copyright (C) 2012 Vincent Lachenal
4
5
This file is part of ANCH Framework.
6
7
ANCH Framework is free software: you can redistribute it and/or modify
8
it under the terms of the GNU Lesser General Public License as published by
9
the Free Software Foundation, either version 3 of the License, or
10
(at your option) any later version.
11
12
ANCH Framework is distributed in the hope that it will be useful,
13
but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
GNU Lesser General Public License for more details.
16
17
You should have received a copy of the GNU Lesser General Public License
18
along with ANCH Framework. If not, see <http://www.gnu.org/licenses/>.
19
*/
20
#pragma once
21
22
#include <iostream>
23
#include <queue>
24
#include <mutex>
25
#include <thread>
26
27
#include "log/fileWriter.hpp"
28
29
30
namespace
anch::log {
31
38
class
LowPriorityWriter
:
public
anch::log::FileWriter
{
39
40
// Attributes +
41
private
:
43
std::queue<std::string> _messages;
44
46
bool
_running;
47
49
std::thread* _thread;
50
52
std::mutex _mutex;
53
// Attributes -
54
55
// Constructors +
56
public
:
62
LowPriorityWriter
(
const
anch::conf::Section& conf);
63
// Constructors -
64
65
// Destructor +
66
public
:
70
virtual
~LowPriorityWriter
();
71
// Destructor -
72
73
// Method +
74
public
:
81
virtual
void
write
(
const
std::string& message)
override
;
82
86
void
startTreatment
();
87
88
private
:
92
void
process();
93
// Method -
94
95
};
96
97
}
anch::log::FileWriter
Log file writer.
Definition
fileWriter.hpp:39
anch::log::LowPriorityWriter::~LowPriorityWriter
virtual ~LowPriorityWriter()
anch::log::LowPriorityWriter::startTreatment
void startTreatment()
anch::log::LowPriorityWriter::write
virtual void write(const std::string &message) override
anch::log::LowPriorityWriter::LowPriorityWriter
LowPriorityWriter(const anch::conf::Section &conf)
anch-log
inc
log
lowPriorityWriter.hpp
Generated by
1.15.0