45 cout <<
"Received shutdown signal..." << endl;
49 int main(
int argc,
char *argv[]) {
51 cerr <<
"Must supply at least one plugin name to load." << endl;
54 cout <<
"Creating server..." << endl;
58 cout <<
"Registering shutdown handler..." << endl;
59 osvr::server::registerShutdownHandler<&handleShutdown>();
61 cout <<
"Loading plugins..." << endl;
62 for (
int i = 1; i < argc; ++i) {
64 cout <<
"Loading plugin '" << argv[i] <<
"'..." << endl;
65 server->loadPlugin(argv[i]);
66 cout <<
"Plugin '" << argv[i] <<
"' loaded!\n" << endl;
67 }
catch (std::exception &e) {
68 std::cerr <<
"Caught exception tring to load " << argv[i] <<
": "
69 << e.what() << std::endl;
74 cout <<
"Triggering a hardware detection..." << endl;
75 server->triggerHardwareDetect();
77 cout <<
"Starting server mainloop..." << endl;
78 server->startAndAwaitShutdown();
80 cout <<
"Server mainloop exited." << endl;
Header to register a handler for cross-platform shutdown/terminate signals. WARNING: includes windows...
void handleShutdown()
Shutdown handler function - forcing the server pointer to be global.
Header declaring osvr::server::Server.
shared_ptr< Server > ServerPtr
How one should hold a Server.
static OSVR_SERVER_EXPORT ServerPtr createLocal()
Create a server object with a local-only (but still IP-based) connection.