3#include "pixelbullet/application/application.h"
4#include "pixelbullet/application/cli.h"
5#include "pixelbullet/application/specification.h"
6#include "pixelbullet/logging/log.h"
15int main(
int argc,
char* argv[])
18 const char* binary_path = argv[0] ? argv[0] :
"";
19 auto bootstrap = pixelbullet::CLI::ParseBootstrap(command_line_args, binary_path);
21 .binary_path = bootstrap.binary_path,
22 .log_directory_override = bootstrap.launch_options.log_directory_override,
24 auto app_logger = pixelbullet::logging::get(pixelbullet::logging::names::core_app);
29 exit_code = pixelbullet::Application::Launch(bootstrap, &pixelbullet::CreateApplication);
31 catch (
const std::exception& exception)
33 app_logger->critical(
"Unhandled exception: {}", exception.what());
38 app_logger->critical(
"Unhandled unknown exception");
42 app_logger->info(
"Process exiting with code {}", exit_code);
43 pixelbullet::logging::shutdown();
Definition specification.h:61
Command-line arguments passed to the application.
Definition specification.h:19