AnCH Framework 0.1
Another C++ Hack Framework
Loading...
Searching...
No Matches
fileWriter.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 <fstream>
23#include <filesystem>
24
25#include "log/writer.hpp"
26
27
28namespace anch::log {
29
39 class FileWriter: public Writer {
40
41 // Attributes +
42 protected:
44 std::ofstream* _output;
45
47 std::filesystem::path _path;
48
50 uint32_t _maxSize;
51
54
57 // Attributes -
58
59 // Constructors +
60 public:
66 FileWriter(const anch::conf::Section& conf);
67 // Constructors -
68
69 // Destructor +
70 public:
74 virtual ~FileWriter();
75 // Destructor -
76
77 // Methods +
78 public:
85 virtual void write(const std::string& message);
86
87 protected:
93 bool rotate() const;
94
99 // Methods -
100
101 };
102
103}
uint32_t _maxSize
Definition fileWriter.hpp:50
std::filesystem::path _path
Definition fileWriter.hpp:47
virtual void write(const std::string &message)
int _maxIdx
Definition fileWriter.hpp:53
int _fileIdx
Definition fileWriter.hpp:56
std::ofstream * _output
Definition fileWriter.hpp:44
FileWriter(const anch::conf::Section &conf)
Writer(const anch::conf::Section &conf)