/* * PROJECT: ReactOS Automatic Testing Utility * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) * PURPOSE: Class for managing all the configuration parameters * COPYRIGHT: Copyright 2009 Colin Finck (colin@reactos.org) */ class CConfiguration { private: bool m_CrashRecovery; bool m_IsInteractive; bool m_IsReactOS; bool m_PrintToConsole; unsigned long m_RepeatCount; bool m_Shutdown; bool m_Submit; bool m_ListModules; string m_Comment; wstring m_Module; string m_Test; string m_AuthenticationRequestString; string m_SystemInfoRequestString; public: CConfiguration(); void ParseParameters(int argc, wchar_t* argv[]); void GetSystemInformation(); void GetConfigurationFromFile(); bool DoCrashRecovery() const { return m_CrashRecovery; } bool DoPrint() const { return m_PrintToConsole; } bool DoShutdown() const { return m_Shutdown; } bool DoSubmit() const { return m_Submit; } bool IsInteractive() const { return m_IsInteractive; } bool IsReactOS() const { return m_IsReactOS; } unsigned long GetRepeatCount() const { return m_RepeatCount; } bool ListModulesOnly() const { return m_ListModules; } const string& GetComment() const { return m_Comment; } const wstring& GetModule() const { return m_Module; } const string& GetTest() const { return m_Test; } const string& GetAuthenticationRequestString() const { return m_AuthenticationRequestString; } const string& GetSystemInfoRequestString() const { return m_SystemInfoRequestString; } };