PeriDyno 1.0.0
Loading...
Searching...
No Matches
WtApp.cpp
Go to the documentation of this file.
1#include "WtApp.h"
2#include "WMainApp.h"
3
4#include <Wt/WServer.h>
5#include <Wt/WLogger.h>
6
7namespace dyno {
8 WtApp::WtApp(int argc /*= 0*/, char** argv /*= NULL*/)
9 {
10 argc_ = argc;
11 argv_ = argv;
12 }
13
15 {
16
17 }
18
20 {
21 auto createApp = [&](const Wt::WEnvironment& env)->std::unique_ptr<Wt::WApplication> {
22 auto app = std::make_unique<WMainApp>(env);
23 return app;
24 };
25
26 try {
27 if (argc_ == 1)
28 {
29 std::string doc_root = getAssetPath() + "docroot";
30 replace(doc_root.begin(), doc_root.end(), '/', '\\');
31
32 // default args
33 std::vector<std::string> args;
34 args.push_back("--http-listen");
35 args.push_back("0.0.0.0:5000");
36 args.push_back("--docroot");
37 args.push_back(doc_root);
38 args.push_back("--config");
39 args.push_back(doc_root + "\\wt_config.xml");
40 Wt::log("warning") << doc_root + "\\wt_config.xml";
41 Wt::WRun("", args, createApp);
42 }
43 else
44 {
45 Wt::WServer server(argc_, argv_);
46 server.addEntryPoint(Wt::EntryPointType::Application, createApp);
47 server.run();
48 }
49
50 }
51 catch (Wt::WServer::Exception& e) {
52 std::cerr << e.what() << "\n";
53 return;
54 }
55 catch (std::exception& e) {
56 std::cerr << "exception: " << e.what() << "\n";
57 return;
58 }
59 }
60}
void mainLoop() override
Definition WtApp.cpp:19
char ** argv_
Definition WtApp.h:16
WtApp(int argc=1, char **argv=NULL)
Definition WtApp.cpp:8
int argc_
Definition WtApp.h:15
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25