| 12345678910111213141516171819202122232425262728293031323334 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- #pragma once
- #include "Core/ICustomConfigFlags.h"
- class HostConfigFlags : public ICustomConfigFlags
- {
- public:
- #define FLAG(Type, Name, Desc, Default) \
- Type Name; \
- bool Name##IsEnabled;
- #include "HostConfigFlagsList.h"
- static HostConfigFlags flags;
- static LPWSTR* argsVal;
- static int argsCount;
- static void(__stdcall *pfnPrintUsage)();
- static void HandleArgsFlag(int& argc, _Inout_updates_to_(argc, argc) LPWSTR argv[]);
- virtual bool ParseFlag(LPCWSTR flagsString, ICmdLineArgsParser * parser) override;
- virtual void PrintUsage() override;
- static void PrintUsageString();
- private:
- int nDummy;
- HostConfigFlags();
- template <typename T>
- void Parse(ICmdLineArgsParser * parser, T * value);
- };
|