1 /*
2  * PROJECT:     ReactOS Automatic Testing Utility
3  * LICENSE:     GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4  * PURPOSE:     Class for managing all the configuration parameters
5  * COPYRIGHT:   Copyright 2009 Colin Finck (colin@reactos.org)
6  */
7 
8 class CConfiguration
9 {
10 private:
11     bool m_CrashRecovery;
12     bool m_IsInteractive;
13     bool m_IsReactOS;
14     bool m_PrintToConsole;
15     bool m_Shutdown;
16     bool m_Submit;
17     string m_Comment;
18     wstring m_Module;
19     string m_Test;
20 
21     string m_AuthenticationRequestString;
22     string m_SystemInfoRequestString;
23 
24 public:
25     CConfiguration();
26     void ParseParameters(int argc, wchar_t* argv[]);
27     void GetSystemInformation();
28     void GetConfigurationFromFile();
29 
30     bool DoCrashRecovery() const { return m_CrashRecovery; }
31     bool DoPrint() const { return m_PrintToConsole; }
32     bool DoShutdown() const { return m_Shutdown; }
33     bool DoSubmit() const { return m_Submit; }
34     bool IsInteractive() const { return m_IsInteractive; }
35     bool IsReactOS() const { return m_IsReactOS; }
36     const string& GetComment() const { return m_Comment; }
37     const wstring& GetModule() const { return m_Module; }
38     const string& GetTest() const { return m_Test; }
39 
40     const string& GetAuthenticationRequestString() const { return m_AuthenticationRequestString; }
41     const string& GetSystemInfoRequestString() const { return m_SystemInfoRequestString; }
42 };
43