OpenZWave Library
1.6.1133
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
cpp
src
platform
Mutex.h
Go to the documentation of this file.
1
//-----------------------------------------------------------------------------
2
//
3
// Mutex.h
4
//
5
// Cross-platform mutex
6
//
7
// Copyright (c) 2010 Mal Lansell <mal@lansell.org>
8
// All rights reserved.
9
//
10
// SOFTWARE NOTICE AND LICENSE
11
//
12
// This file is part of OpenZWave.
13
//
14
// OpenZWave is free software: you can redistribute it and/or modify
15
// it under the terms of the GNU Lesser General Public License as published
16
// by the Free Software Foundation, either version 3 of the License,
17
// or (at your option) any later version.
18
//
19
// OpenZWave is distributed in the hope that it will be useful,
20
// but WITHOUT ANY WARRANTY; without even the implied warranty of
21
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
// GNU Lesser General Public License for more details.
23
//
24
// You should have received a copy of the GNU Lesser General Public License
25
// along with OpenZWave. If not, see <http://www.gnu.org/licenses/>.
26
//
27
//-----------------------------------------------------------------------------
28
#ifndef _Mutex_H
29
#define _Mutex_H
30
31
#include "
platform/Wait.h
"
32
33
namespace
OpenZWave
34
{
35
namespace
Internal
36
{
37
namespace
Platform
38
{
39
class
MutexImpl;
40
44
class
Mutex
:
public
Wait
45
{
46
public
:
51
Mutex
();
52
62
bool
Lock
(
bool
const
_bWait =
true
);
63
69
void
Unlock
();
70
74
virtual
bool
IsSignalled
();
75
protected
:
76
81
~Mutex
();
82
83
private
:
84
Mutex
(
Mutex
const
&);
// prevent copy
85
Mutex
& operator =(
Mutex
const
&);
// prevent assignment
86
87
MutexImpl* m_pImpl;
// Pointer to an object that encapsulates the platform-specific implementation of a mutex.
88
};
89
}
// namespace Platform
90
}
// namespace Internal
91
}
// namespace OpenZWave
92
93
#endif //_Mutex_H
94
OpenZWave
Definition:
Bitfield.cpp:30
Wait.h
OpenZWave::Internal::Platform::Mutex::Lock
bool Lock(bool const _bWait=true)
Definition:
Mutex.cpp:68
OpenZWave::Internal::Platform::Wait
Platform-independent definition of Wait objects.
Definition:
Wait.h:46
OpenZWave::Internal::Platform::Mutex::IsSignalled
virtual bool IsSignalled()
Definition:
Mutex.cpp:93
OpenZWave::Internal::Platform::Mutex::Mutex
Mutex()
Definition:
Mutex.cpp:50
OpenZWave::Internal::Platform::Mutex::Unlock
void Unlock()
Definition:
Mutex.cpp:78
OpenZWave::Internal::Platform::Mutex
Implements a platform-independent mutex–for serializing access to a shared resource.
Definition:
Mutex.h:44
OpenZWave::Internal::Platform::Mutex::~Mutex
~Mutex()
Definition:
Mutex.cpp:59
Generated on Mon Jun 1 2020 10:40:08 for OpenZWave Library by
1.8.8