gloox
1.0.9
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
mutexguard.h
1
/*
2
Copyright (c) 2007-2013 by Jakob Schroeter <js@camaya.net>
3
This file is part of the gloox library. http://camaya.net/gloox
4
5
This software is distributed under a license. The full license
6
agreement can be found in the file LICENSE in this distribution.
7
This software may not be copied, modified, sold or distributed
8
other than expressed in the named license agreement.
9
10
This software is distributed without any warranty.
11
*/
12
13
14
#ifndef MUTEXGUARD_H__
15
#define MUTEXGUARD_H__
16
17
#include "mutex.h"
18
19
namespace
gloox
20
{
21
22
namespace
util
23
{
24
31
class
GLOOX_API
MutexGuard
32
{
33
public
:
38
MutexGuard
(
Mutex
* mutex ) : m_mutex( *mutex ) {
if
( mutex ) m_mutex.lock(); }
39
44
MutexGuard
(
Mutex
& mutex ) : m_mutex( mutex ) { m_mutex.lock(); }
45
49
~MutexGuard
() { m_mutex.unlock(); }
50
51
private
:
52
MutexGuard
& operator=(
const
MutexGuard
& );
53
Mutex
& m_mutex;
54
55
};
56
57
}
58
59
}
60
61
#endif // MUTEXGUARD_H__
Generated on Tue Oct 15 2013 19:25:21 for gloox by
1.8.1.2