32 lines
626 B
C++
32 lines
626 B
C++
|
|
import memory.scope;
|
||
|
|
import logger;
|
||
|
|
import app;
|
||
|
|
import std;
|
||
|
|
|
||
|
|
/** The ultimate entrypoint. */
|
||
|
|
auto main(int argc, char *argv[]) -> std::int32_t
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
std::ignore = argc;
|
||
|
|
std::ignore = argv;
|
||
|
|
|
||
|
|
auto application = lt::memory::Scope<lt::app::Application> {};
|
||
|
|
application = lt::app::create_application();
|
||
|
|
if (!application)
|
||
|
|
{
|
||
|
|
throw std::runtime_error { "Failed to create application\n" };
|
||
|
|
}
|
||
|
|
|
||
|
|
application->game_loop();
|
||
|
|
return 0;
|
||
|
|
}
|
||
|
|
catch (const std::exception &exp)
|
||
|
|
{
|
||
|
|
lt::log::critical("Terminating due to uncaught exception:");
|
||
|
|
lt::log::critical("\texception.what(): {}", exp.what());
|
||
|
|
|
||
|
|
return 1;
|
||
|
|
}
|
||
|
|
}
|