CommonLibSSE NG
Loading...
Searching...
No Matches
GAtomic.h
Go to the documentation of this file.
1
#pragma once
2
3
namespace
RE
4
{
5
class
GLock
6
{
7
public
:
8
class
Locker
9
{
10
public
:
11
Locker
(
GLock
* a_lock);
12
~Locker
();
13
14
// members
15
GLock
*
lock
;
// 0
16
};
17
static_assert
(
sizeof
(
Locker
) == 0x8);
18
19
GLock
(std::uint32_t a_spinCount = 0);
20
~GLock
();
21
22
void
operator
delete
(
void
*) =
delete
;
23
24
void
Lock
();
25
void
Unlock
();
26
27
// members
28
WinAPI::CRITICAL_SECTION
cs
;
// 00
29
};
30
static_assert
(
sizeof
(
GLock
) == 0x28);
31
32
template
<
class
T>
33
class
GAtomicValueBase
34
{
35
public
:
36
// members
37
volatile
T
value
;
// 0
38
};
39
//static_assert(sizeof(GAtomicValueBase<std::int32_t>) == 0x4);
40
41
template
<
class
T>
42
class
GAtomicInt
:
public
GAtomicValueBase
<T>
// 0
43
{
44
public
:
45
};
46
//static_assert(sizeof(GAtomicInt<std::int32_t>) == 0x4);
47
}
RE::GAtomicInt
Definition
GAtomic.h:43
RE::GAtomicValueBase
Definition
GAtomic.h:34
RE::GAtomicValueBase::value
volatile T value
Definition
GAtomic.h:37
RE::GLock::Locker
Definition
GAtomic.h:9
RE::GLock::Locker::~Locker
~Locker()
RE::GLock::Locker::lock
GLock * lock
Definition
GAtomic.h:15
RE::GLock::Locker::Locker
Locker(GLock *a_lock)
RE::GLock
Definition
GAtomic.h:6
RE::GLock::GLock
GLock(std::uint32_t a_spinCount=0)
RE::GLock::Unlock
void Unlock()
RE::GLock::~GLock
~GLock()
RE::GLock::Lock
void Lock()
RE::GLock::cs
WinAPI::CRITICAL_SECTION cs
Definition
GAtomic.h:28
RE
Definition
AbsorbEffect.h:6
SKSE::WinAPI::CRITICAL_SECTION
Definition
WinAPI.h:42
CommonLibSSE-NG
include
RE
G
GAtomic.h
Generated by
1.9.7