SFML - Simple and Fast Multimedia Library

SFML 2.5.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

ContextSettings.hpp
1
2//
3// SFML - Simple and Fast Multimedia Library
4// Copyright (C) 2007-2018 Laurent Gomila (laurent@sfml-dev.org)
5//
6// This software is provided 'as-is', without any express or implied warranty.
7// In no event will the authors be held liable for any damages 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 freely,
11// subject to the following restrictions:
12//
13// 1. The origin of this software must not be misrepresented;
14// you must not claim that you wrote the original software.
15// If you use this software in a product, an acknowledgment
16// in the product documentation would be appreciated but is not required.
17//
18// 2. Altered source versions must be plainly marked as such,
19// and must not be misrepresented as being the original software.
20//
21// 3. This notice may not be removed or altered from any source distribution.
22//
24
25#ifndef SFML_CONTEXTSETTINGS_HPP
26#define SFML_CONTEXTSETTINGS_HPP
27
28#include <SFML/Config.hpp>
29
30namespace sf
31{
37 struct ContextSettings
38{
43 enum Attribute
44 {
45 Default = 0,
46 Core = 1 << 0,
47 Debug = 1 << 2
48 };
49
62 explicit ContextSettings(unsigned int depth = 0, unsigned int stencil = 0, unsigned int antialiasing = 0, unsigned int major = 1, unsigned int minor = 1, unsigned int attributes = Default, bool sRgb = false) :
63 depthBits (depth),
64 stencilBits (stencil),
65 antialiasingLevel(antialiasing),
66 majorVersion (major),
67 minorVersion (minor),
68 attributeFlags (attributes),
69 sRgbCapable (sRgb)
70 {
71 }
72
74 // Member data
76 unsigned int depthBits;
77 unsigned int stencilBits;
78 unsigned int antialiasingLevel;
79 unsigned int majorVersion;
80 unsigned int minorVersion;
81 Uint32 attributeFlags;
82 bool sRgbCapable;
83};
84
85} // namespace sf
86
87
88#endif // SFML_CONTEXTSETTINGS_HPP
89
90
sf::ContextSettings
Structure defining the settings of the OpenGL context attached to a window.
Definition: ContextSettings.hpp:38
sf::ContextSettings::attributeFlags
Uint32 attributeFlags
The attribute flags to create the context with.
Definition: ContextSettings.hpp:81
sf::ContextSettings::depthBits
unsigned int depthBits
Bits of the depth buffer.
Definition: ContextSettings.hpp:76
sf::ContextSettings::majorVersion
unsigned int majorVersion
Major number of the context version to create.
Definition: ContextSettings.hpp:79
sf::ContextSettings::minorVersion
unsigned int minorVersion
Minor number of the context version to create.
Definition: ContextSettings.hpp:80
sf::ContextSettings::stencilBits
unsigned int stencilBits
Bits of the stencil buffer.
Definition: ContextSettings.hpp:77
sf::ContextSettings::antialiasingLevel
unsigned int antialiasingLevel
Level of antialiasing.
Definition: ContextSettings.hpp:78
sf::ContextSettings::ContextSettings
ContextSettings(unsigned int depth=0, unsigned int stencil=0, unsigned int antialiasing=0, unsigned int major=1, unsigned int minor=1, unsigned int attributes=Default, bool sRgb=false)
Default constructor.
Definition: ContextSettings.hpp:62
sf::ContextSettings::sRgbCapable
bool sRgbCapable
Whether the context framebuffer is sRGB capable.
Definition: ContextSettings.hpp:82
sf::ContextSettings::Attribute
Attribute
Enumeration of the context attribute flags.
Definition: ContextSettings.hpp:44
sf::ContextSettings::Debug
@ Debug
Debug attribute.
Definition: ContextSettings.hpp:47
sf::ContextSettings::Default
@ Default
Non-debug, compatibility context (this and the core attribute are mutually exclusive)
Definition: ContextSettings.hpp:45
sf::ContextSettings::Core
@ Core
Core attribute.
Definition: ContextSettings.hpp:46