gloox
1.0.9
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
atomicrefcount.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 ATOMICREFCOUNT_H__
15
#define ATOMICREFCOUNT_H__
16
17
#include "macros.h"
18
#include "mutex.h"
19
20
namespace
gloox
21
{
22
23
namespace
util
24
{
34
class
GLOOX_API
AtomicRefCount
35
{
36
public
:
40
AtomicRefCount
();
41
46
int
increment();
47
52
int
decrement();
53
58
void
reset();
59
60
private
:
61
AtomicRefCount
& operator=(
const
AtomicRefCount
& );
62
63
volatile
int
m_count;
64
65
// The mutex is only used if a native function is unavailable.
66
Mutex
m_lock;
67
68
};
69
70
}
71
72
}
73
74
#endif // ATOMICREFCOUNT_H__
75
Generated on Tue Oct 15 2013 19:25:20 for gloox by
1.8.1.2