-
Notifications
You must be signed in to change notification settings - Fork 29
/
Version.hpp
45 lines (39 loc) · 991 Bytes
/
Version.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#pragma once
#include <iostream>
#ifndef NOMINMAX
#define NOMINMAX
#endif
#include <Windows.h>
namespace Procon {
using VerType = size_t;
enum class ReleaseType {
Alpha,
Beta,
Release
};
struct Version {
VerType major;
VerType minor;
VerType patch;
ReleaseType type;
VerType typeSubver;
};
constexpr char ProgramName[] = "ProconXInput";
constexpr char InstallerName[] = "ProconXInput Installer";
#ifdef _DEBUG
constexpr char BuildType[] = "Debug Build";
#else
constexpr char BuildType[] = "Release Build";
#endif
#if _WIN64
constexpr char Platform[] = "64-bit";
#elif _WIN32
constexpr char Platform[] = "32-bit";
#else
static_assert(false, "Platform unable to be determined.");
#endif
constexpr Version ProgramVersion{ 0, 1, 0, ReleaseType::Alpha, 3 };
constexpr Version InstallerVersion{ 0, 1, 0, ReleaseType::Alpha, 1 };
std::ostream& operator<<(std::ostream& o, const ReleaseType& vt);
std::ostream& operator<<(std::ostream& o, const Version& v);
};