/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ #pragma once #include #include //TODO replace with external fmt namespace OpenVulkano { inline const char* ENGINE_NAME = "OpenVulkano"; struct EngineVersion { int major, minor, patch; int intVersion; std::string stringVersion; EngineVersion(int major, int minor, int patch, int build = 0) : major(major), minor(minor), patch(patch) { intVersion = ((major) << 24) | ((minor) << 16) | (patch); std::string_view buildConfig; #ifdef _DEBUG buildConfig = "MSVC_DEBUG"; #elif DEBUG buildConfig = "DEBUG"; #endif stringVersion = fmt::format("v{0}.{1}.{2}.{3}{4}", major, minor, patch, build, buildConfig); } }; inline const EngineVersion ENGINE_VERSION(0, 0, 1); }