SFML 2.5.1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
include
SFML
System
ThreadLocal.hpp
1
//
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_THREADLOCAL_HPP
26
#define SFML_THREADLOCAL_HPP
27
29
// Headers
31
#include <SFML/System/Export.hpp>
32
#include <SFML/System/NonCopyable.hpp>
33
#include <cstdlib>
34
35
36
namespace
sf
37
{
38
namespace
priv
39
{
40
class
ThreadLocalImpl;
41
}
42
47
class
SFML_SYSTEM_API
ThreadLocal
:
NonCopyable
48
{
49
public
:
50
57
ThreadLocal
(
void
* value = NULL);
58
63
~
ThreadLocal
();
64
71
void
setValue(
void
* value);
72
79
void
* getValue()
const
;
80
81
private
:
82
84
// Member data
86
priv::ThreadLocalImpl* m_impl;
87
};
88
89
}
// namespace sf
90
91
92
#endif // SFML_THREADLOCAL_HPP
93
94
sf::NonCopyable
Utility class that makes any derived class non-copyable.
Definition:
NonCopyable.hpp:41
sf
Definition:
AlResource.hpp:34
sf::ThreadLocal
Defines variables with thread-local storage.
Definition:
ThreadLocal.hpp:47