Stroika Library 3.0d20
 
Loading...
Searching...
No Matches
Samples/AppSettings/Sources/Main.cpp
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4#include "Stroika/Frameworks/StroikaPreComp.h"
5
8#include "Stroika/Foundation/Execution/CommandLine.h"
11
12#include "AppConfiguration.h"
13#include "MoreConfiguration.h"
14
15using namespace std;
16
17using namespace Stroika::Foundation;
19using namespace Stroika::Foundation::Execution;
21
22using namespace StroikaSample;
23using namespace StroikaSample::AppSettings;
24
25int main ([[maybe_unused]] int argc, [[maybe_unused]] const char* argv[])
26{
28 Stroika_Foundation_Debug_OptionalizeTraceArgs ("main", "argv={}"_f, Characters::ToString (vector<const char*>{argv, argv + argc}))};
29
30 Logger::Activator logMgrActivator; // OptionsFile uses this by default...'
31
32 // for a test app, writing to stdout, seems a plausible default...
33 Logger::sThe.AddAppender (
34 make_shared<Logger::StreamAppender> (FileOutputStream::New (STDOUT_FILENO, FileStream::AdoptFDPolicy::eDisconnectOnDestruction)));
35
36 // Simple example using OpensFile, and ModuleGetterSetter
37 [[maybe_unused]] uint16_t usePort = gAppConfiguration->WebServerPort.value_or (AppConfigurationType::kWebServerPort_Default);
38
39 // Fancier examples
40 TestUse1 ();
41 TestUse2 ();
42 TestUse3 ();
43 TestUse4 ();
44
45 return EXIT_SUCCESS;
46}
#define Stroika_Foundation_Debug_OptionalizeTraceArgs(...)
Definition Trace.h:270
STL namespace.