#pragma once
#include "imgui.h"
/**
 * Definitions for build versioning.
 * The build version is composed of:
 * - Major version (BUILD_VERSION_MAJOR)
 * - Minor version (BUILD_VERSION_MINOR)
 * - Patch version (BUILD_VERSION_PATCH)
 * - Build number (BUILD_VERSION_VER) which is incremented at each build.
 * - Build type (BUILD_VERSION_TYPE) which can be "Debug" or "Release"
 * - Build state (BUILD_VERSION_STATE) which can be "Dev" or "Stable"
 */
#define BUILD_VERSION_MAJOR 14
#define BUILD_VERSION_MINOR 5
#define BUILD_VERSION_PATCH 27

// BUILD_VERSION_VER est un int persisté dans un fichier, à charger au lancement et incrémenter à chaque build (voir point 3)
extern int BUILD_VERSION_VER;

#ifdef _DEBUG
#define BUILD_VERSION_TYPE "Debug"
#define BUILD_VERSION_INVERSE "Release"
// define a color for debug mode (dark yellow)
#define DEBUG_MODE_COLOR IM_COL32(204, 153, 0, 255)
#else
#define BUILD_VERSION_TYPE "Release"
#define BUILD_VERSION_INVERSE "Debug"
// define a color for release mode (rouge bordeau)
#define DEBUG_MODE_COLOR IM_COL32(128, 0, 32, 255)
#endif

// BUILD_VERSION_STATE est défini manuellement (ex "Dev" ou "Stable")
#define BUILD_VERSION_STATE "Dev"
//#define BUILD_VERSION_STATE "Stable"
