source: branches/work_320/AppConfig.h @ 679

Revision 330, 2.1 KB checked in by jls17, 6 years ago (diff)
  • CMain::Run stores argv[0] in appConfig, so it could be used later in the resource extractor
Line 
1//Copyright (C) 2009 Stefan Nerlich | stefan.nerlich@hotmail.com
2//
3//This file is part of ARInside.
4//
5//    ARInside is free software: you can redistribute it and/or modify
6//    it under the terms of the GNU General Public License as published by
7//    the Free Software Foundation, version 2 of the License.
8//
9//    ARInside 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
12//    GNU General Public License for more details.
13//
14//    You should have received a copy of the GNU General Public License
15//    along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
16
17#pragma once
18
19using namespace std;
20
21/****
22 * the following macro should be used instead of cout to show the output only
23 * in verbose mode. to make the macro available in a code file just make sure
24 * you have included "ARInside.h".
25 */ 
26#define LOG if(AppConfig::verboseMode) cout
27
28// forward declarations
29class CommandLineValidator;
30
31class AppConfig
32{
33public:
34        AppConfig(void);
35        ~AppConfig(void);
36
37        // global settings
38        static bool verboseMode;
39
40        // ARSystem data
41        string userForm;
42        string groupForm;
43        string roleForm;
44        string userQuery;
45        string groupQuery;
46        string roleQuery;
47        int maxRetrieve;
48        string overlayMode;
49        bool slowObjectLoading;
50
51        // Output and Layout configuration
52        string companyName;
53        string companyUrl;
54        string targetFolder;
55        bool fileMode;
56        string objListXML;
57        bool oldNaming;
58        bool testMode;
59
60        // BlackList
61        string blackList;
62
63        //Restrict ObjectLibrary
64        bool bLoadServerInfoList;
65        bool bLoadUserList;
66        bool bLoadGroupList;
67        bool bLoadRoleList;
68        bool bUseUtf8;
69        bool bCompactFolder;
70        bool bGZCompression;
71        bool bDeleteExistingFiles;
72        bool bOverlaySupport;
73
74        string serverName;
75        string userName;
76        string password;
77        int tcpPort;
78        int rpcPort;
79        int apiTimeout;
80
81        string runNotes;
82        string argv_0;
83
84public:
85        void Validate(CommandLineValidator& cmdLine);
86        void Dump();
87private:
88        void OverrideSettingsByCommandLine(CommandLineValidator& cmdLine);
89};
Note: See TracBrowser for help on using the repository browser.