Enigma
3.2.0
A Simple, Reliable and Efficient Encryption Tool
Core.hpp
Go to the documentation of this file.
1
#pragma once
2
#ifndef ENIGMA_CORE_H
3
#define ENIGMA_CORE_H
4
5
#include "
Concepts.hpp
"
6
#include "
Constants.hpp
"
7
#include "
Macros.hpp
"
8
#include "
Platform.hpp
"
9
#include "
Types.hpp
"
10
#include "
Version.hpp
"
11
13
#define ENIGMA_TESTING false
15
17
#define ENIGMA_PROFILE false
19
20
22
#define ENIGMA_GL_VERSION_MAJOR 3
23
#define ENIGMA_GL_VERSION_MINOR 3
25
26
28
#ifdef ENIGMA_DEBUG
29
//Break debug
30
#if defined(ENIGMA_PLATFORM_WINDOWS)
31
#define ENIGMA_DEBUG_BREAK() ::__debugbreak()
32
#elif defined(ENIGMA_PLATFORM_LINUX)
33
#include <csignal>
34
#define ENIGMA_DEBUG_BREAK() std::raise(SIGTRAP)
35
#else
36
#define ENIGMA_DEBUG_BREAK() std::abort()
37
#endif
38
#else
39
#define ENIGMA_DEBUG_BREAK()
40
#endif
42
43
44
//Windows
45
#if defined(_MSC_VER)
46
//Disable warning 4251 in MSC Microsoft Visual C++
47
//Warning C4251 needs to have dll - interface to be used by clients of class
48
#ifdef ENIGMA_DYNAMIC_LINK
49
#pragma warning(disable : 4251)
50
#endif
52
#ifndef _CRT_SECURE_NO_WARNINGS
53
#define _CRT_SECURE_NO_WARNINGS
54
#endif
55
#ifndef NOMINMAX
56
// On Windows, a header file defines two macros min and max which may result in
57
// conflicts with their counterparts in the standard library and therefore in errors during compilation.
58
#define NOMINMAX
59
#endif
60
#ifndef WIN32_LEAN_AND_MEAN
61
#define WIN32_LEAN_AND_MEAN
62
#endif
63
#endif
65
66
67
#endif
// !ENIGMA_CORE_H
Concepts.hpp
Constants.hpp
Macros.hpp
Platform.hpp
Types.hpp
Version.hpp
src
Core
Core.hpp
Generated on Sat Oct 19 2024 20:10:46 for Enigma by
1.9.1