OpenBarnyard
Loading...
Searching...
No Matches
TMutex_Win.cpp
Go to the documentation of this file.
1
#include "ToshiPCH.h"
2
#include "
TMutex_Win.h
"
3
4
#include <windows.h>
5
6
//-----------------------------------------------------------------------------
7
// Enables memory debugging.
8
// Note: Should be the last include!
9
//-----------------------------------------------------------------------------
10
#include "
Core/TMemoryDebugOn.h
"
11
12
TOSHI_NAMESPACE_START
13
14
TMutex::TMutex
()
15
{
16
}
17
18
TMutex::~TMutex
()
19
{
20
Destroy
();
21
}
22
23
// $Barnyard: FUNCTION 006bb660
24
TBOOL
TMutex::Create
()
25
{
26
m_Handle = CreateMutexA( NULL, FALSE, NULL );
27
return
TTRUE
;
28
}
29
30
// $Barnyard: FUNCTION 006bb680
31
TBOOL
TMutex::Destroy
()
32
{
33
BOOL result = CloseHandle( m_Handle );
34
m_Handle = NULL;
35
36
return
result;
37
}
38
39
TMutex
&
TMutex::operator=
(
const
TMutex
& mutex )
40
{
41
m_Handle = mutex.m_Handle;
42
return
*
this
;
43
}
44
45
TMutex
&
TMutex::operator=
(
void
* handle )
46
{
47
m_Handle = handle;
48
return
*
this
;
49
}
50
51
// $Barnyard: FUNCTION 006bb6e0
52
TBOOL
TMutex::Unlock
()
53
{
54
return
ReleaseMutex( m_Handle );
55
}
56
57
// $Barnyard: FUNCTION 006bb6a0
58
TBOOL
TMutex::Lock
(
FLAG
a_eFlags
/*= FLAG_NONE */
)
59
{
60
DWORD waitForMs = ( a_eFlags &
FLAG_NO_WAIT
) ? 0 : INFINITE;
61
DWORD result = WaitForSingleObject( m_Handle, waitForMs );
62
63
return
result == WAIT_OBJECT_0;
64
}
65
66
TOSHI_NAMESPACE_END
TMemoryDebugOn.h
TMutex_Win.h
TOSHI_NAMESPACE_START
#define TOSHI_NAMESPACE_START
Definition
Defines.h:47
TOSHI_NAMESPACE_END
#define TOSHI_NAMESPACE_END
Definition
Defines.h:50
TTRUE
#define TTRUE
Definition
Typedefs.h:25
TBOOL
bool TBOOL
Definition
Typedefs.h:6
TMutex::operator=
TMutex & operator=(const TMutex &mutex)
Definition
TMutex_Win.cpp:39
TMutex::Lock
TBOOL Lock(FLAG a_eFlags=FLAG_NONE)
Definition
TMutex_Win.cpp:58
TMutex::~TMutex
~TMutex()
Definition
TMutex_Win.cpp:18
TMutex::Create
TBOOL Create()
Definition
TMutex_Win.cpp:24
TMutex::Destroy
TBOOL Destroy()
Definition
TMutex_Win.cpp:31
TMutex::FLAG
FLAG
Definition
TMutex_Win.h:9
TMutex::FLAG_NO_WAIT
@ FLAG_NO_WAIT
Definition
TMutex_Win.h:11
TMutex::TMutex
TMutex()
Definition
TMutex_Win.cpp:14
TMutex::Unlock
TBOOL Unlock()
Definition
TMutex_Win.cpp:52
D:
_dev
OpenBarnyard
Source
Toshi
Source
Platform
Windows
TMutex_Win.cpp
Generated by
1.13.2