#include #include #include #include #include #include using namespace Artifact; struct Args { bool server = false; std::string host = ""; std::string port = ""; }; int main(int argc, const char * argv[]) { Args args {}; for (int i = 0; i < argc; ++i) { if (strcmp(argv[i], "--server")) { args.server = true; } else if (strcmp(argv[i], "--host")) { args.host = argv[++i]; } else if (strcmp(argv[i], "--port")) { args.port = argv[++i]; } } getDataPath(); Client client; client.addDefaultSubsystems(); std::thread([&client]() { Server server; server.addDefaultSubsystems(); auto serverListener = server.subsystem(); auto clientConnection = client.subsystem(); serverListener->host(clientConnection); clientConnection->connect(serverListener); server.run(); }).detach(); client.run(); return 0; }