#include "layers/test_panel/test_panel.hpp" #include "layers/test_panel_2/test_panel_2.hpp" #include "layers/opengl_panel/opengl_panel.hpp" namespace sandbox { class test_app : public VE::application { public: test_app(std::string app_name) : VE::application{ app_name } {}; ~test_app() = default; public: template void push_layer(Args... args) { this->VE::application::push_layer(args...); } }; } namespace VE { inline application& create() { static sandbox::test_app e{ "sandbox" }; e.push_layer( new sandbox::test_panel{}, new sandbox::test_panel_2{}, new sandbox::opengl_panel{} ); return e; } } auto main(int argc, char* args[]) -> int { decltype(auto) app = VE::create(); app.run(); }