Gamedev Framework (gf) 1.2.0
A C++17 framework for 2D games
Library.h
1/*
2 * Gamedev Framework (gf)
3 * Copyright (C) 2016-2022 Julien Bernard
4 *
5 * This software is provided 'as-is', without any express or implied
6 * warranty. In no event will the authors be held liable for any damages
7 * arising from the use of this software.
8 *
9 * Permission is granted to anyone to use this software for any purpose,
10 * including commercial applications, and to alter it and redistribute it
11 * freely, subject to the following restrictions:
12 *
13 * 1. The origin of this software must not be misrepresented; you must not
14 * claim that you wrote the original software. If you use this software
15 * in a product, an acknowledgment in the product documentation would be
16 * appreciated but is not required.
17 * 2. Altered source versions must be plainly marked as such, and must not be
18 * misrepresented as being the original software.
19 * 3. This notice may not be removed or altered from any source distribution.
20 */
21#ifndef GF_LIBRARY_H
22#define GF_LIBRARY_H
23
24#include "GraphicsApi.h"
25
26#include <tuple>
27
28namespace gf {
29#ifndef DOXYGEN_SHOULD_SKIP_THIS
30inline namespace v1 {
31#endif
32
44 class GF_GRAPHICS_API Library {
45 public:
52
56 Library(const Library&) = delete;
57
61 Library& operator=(const Library&) = delete;
62
66 Library(Library&&) noexcept;
67
71 Library& operator=(Library&&) noexcept;
72
79
83 struct Version {
84 int major;
85 int minor;
86 int patch;
87 };
88
95
103 };
104
110 static std::tuple<Version, Version> getDependencyVersion(Dependency dep);
111
112 };
113
114#ifndef DOXYGEN_SHOULD_SKIP_THIS
115}
116#endif
117}
118
119#endif // GF_LIBRARY_H
A class to represent the library.
Definition: Library.h:44
Library(Library &&) noexcept
Move constructor.
Library(const Library &)=delete
Deleted copy constructor.
Library & operator=(const Library &)=delete
Deleted copy assignment.
Dependency
Depedencies of gf.
Definition: Library.h:99
@ FreeType
FreeType.
Definition: Library.h:102
@ SimpleDirectMediaLayer
SDL.
Definition: Library.h:101
@ Boost
Boost.
Definition: Library.h:100
static std::tuple< Version, Version > getDependencyVersion(Dependency dep)
Get the version information about the library dependencies.
static Version getVersion()
Get the version of the gf library.
Library()
Default constructor.
The namespace for gf classes.
Information about version.
Definition: Library.h:83
int patch
Patch version number.
Definition: Library.h:86
int major
Major version number.
Definition: Library.h:84
int minor
Minor version number.
Definition: Library.h:85