opm-common
Loading...
Searching...
No Matches
EclipsePRTLog.hpp
1/*
2 Copyright 2016 Statoil ASA.
3
4 This file is part of the Open Porous Media project (OPM).
5
6 OPM is free software: you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 OPM is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with OPM. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#ifndef ECLIPSEPRTLOG_H
21#define ECLIPSEPRTLOG_H
22
23#include <map>
24#include <string>
25#include <opm/common/OpmLog/StreamLog.hpp>
26
27namespace Opm {
28
29class EclipsePRTLog : public StreamLog {
30
31public:
32 using StreamLog::StreamLog;
33
34 size_t numMessages(int64_t messageType) const;
35
36 ~EclipsePRTLog() override;
37
44 EclipsePRTLog(const std::string& logFile , int64_t messageMask,
45 bool append, bool print_summary);
46
51 EclipsePRTLog(std::ostream& os, int64_t messageMask,
52 bool print_summary);
53
54protected:
55 void addMessageUnconditionally(int64_t messageType, const std::string& message) override;
56
57private:
58 std::map<int64_t, size_t> m_count;
60 bool print_summary_ = true;
61};
62}
63#endif // ECLIPSEPRTLOG_H
void addMessageUnconditionally(int64_t messageType, const std::string &message) override
This is the method subclasses should override.
Definition EclipsePRTLog.cpp:26
EclipsePRTLog(const std::string &logFile, int64_t messageMask, bool append, bool print_summary)
Construct a logger to the <MODEL>.PRT file.
Definition EclipsePRTLog.cpp:64
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30