1/* This file is part of the KDE project
2 Copyright (C) 2014 Martin Sandsmark <martin.sandsmark@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA.
18*/
19
20#ifndef REPLICODESETTINGS_H
21#define REPLICODESETTINGS_H
22
23#include <QObject>
24
25class QIODevice;
26
27class ReplicodeSettings : public QObject
28{
29 Q_OBJECT
30public:
31 explicit ReplicodeSettings(QObject *parent = 0);
32 void writeXml(QIODevice *output, QString sourceFile) const;
33 void load();
34 void save();
35 void setDefaults();
36
37 ///////
38 // Load
39 QString userOperatorPath;
40 QString userClassPath;
41
42 ///////
43 // Init
44 int basePeriod;
45 int reductionCoreCount;
46 int timeCoreCount;
47
48 /////////
49 // System
50 int perfSamplingPeriod;
51 float floatTolerance;
52 int timeTolerance;
53 int primaryTimeHorizon;
54 int secondaryTimeHorizon;
55
56 // Model
57 float mdlInertiaSuccessRateThreshold;
58 int mdlInertiaCountThreshold;
59
60 // Targeted Pattern Extractor
61 float tpxDeltaSuccessRateThreshold;
62 int tpxTimehorizon;
63
64 // Simulation
65 int minimumSimulationTimeHorizon;
66 int maximumSimulationTimeHorizon;
67 float simulationTimeHorizon;
68
69 ////////
70 // Debug
71 bool debug;
72 int notificationMarkerResilience;
73 int goalPredictionSuccessResilience;
74 int debugWindows;
75 int traceLevels;
76
77 bool getObjects;
78 bool decompileObjects;
79 QString decompilationFilePath;
80 bool ignoreNamedObjects;
81 QString objectsPath;
82 bool testObjects;
83
84 //////
85 // Run
86 int runTime;
87 int probeLevel;
88
89 bool getModels;
90 bool decompileModels;
91 bool ignoreNamedModels;
92 QString modelsPath;
93 bool testModels;
94
95};
96
97#endif // REPLICODESETTINGS_H
98