Toast Engine
Toggle main menu visibility
Loading...
Searching...
No Matches
tree_lock.hpp
Go to the documentation of this file.
1
7
8
#pragma once
9
10
#include <
toast/export.hpp
>
11
12
namespace
toast {
13
14
class
INodeOwner
;
15
class
Node
;
16
18
class
TOAST_API TreeReadLock {
19
public
:
20
explicit
TreeReadLock(
const
INodeOwner
* owner)
noexcept
;
21
explicit
TreeReadLock(
const
Node
& node)
noexcept
;
22
~TreeReadLock();
23
24
TreeReadLock(
const
TreeReadLock&) =
delete
;
25
auto
operator=(
const
TreeReadLock&) -> TreeReadLock& =
delete
;
26
TreeReadLock(TreeReadLock&&) =
delete
;
27
auto
operator=(TreeReadLock&&) -> TreeReadLock& =
delete
;
28
29
private
:
30
const
INodeOwner
* m_owner;
31
};
32
34
class
TOAST_API TreeWriteLock {
35
public
:
36
explicit
TreeWriteLock(
const
INodeOwner
* owner)
noexcept
;
37
explicit
TreeWriteLock(
const
Node
& node)
noexcept
;
38
~TreeWriteLock();
39
40
TreeWriteLock(
const
TreeWriteLock&) =
delete
;
41
auto
operator=(
const
TreeWriteLock&) -> TreeWriteLock& =
delete
;
42
TreeWriteLock(TreeWriteLock&&) =
delete
;
43
auto
operator=(TreeWriteLock&&) -> TreeWriteLock& =
delete
;
44
45
private
:
46
const
INodeOwner
* m_owner;
47
};
48
49
}
toast::INodeOwner
Definition
node_owner.hpp:38
toast::Node
Definition
node.hpp:81
export.hpp
engine
src
toast
world
tree_lock.hpp
Generated by
1.17.0