http://www.sim.no/
http://www.coin3d.org/
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
include
Inventor
threads
SbThreadAutoLock.h
1
#ifndef COIN_SBTHREADAUTOLOCK_H
2
#define COIN_SBTHREADAUTOLOCK_H
3
4
/**************************************************************************\
5
*
6
* This file is part of the Coin 3D visualization library.
7
* Copyright (C) by Kongsberg Oil & Gas Technologies.
8
*
9
* This library is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public License
11
* ("GPL") version 2 as published by the Free Software Foundation.
12
* See the file LICENSE.GPL at the root directory of this source
13
* distribution for additional information about the GNU GPL.
14
*
15
* For using Coin with software that can not be combined with the GNU
16
* GPL, and for taking advantage of the additional benefits of our
17
* support services, please contact Kongsberg Oil & Gas Technologies
18
* about acquiring a Coin Professional Edition License.
19
*
20
* See http://www.coin3d.org/ for more information.
21
*
22
* Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
23
* http://www.sim.no/ sales@sim.no coin-support@coin3d.org
24
*
25
\**************************************************************************/
26
27
#include <Inventor/threads/SbThreadMutex.h>
28
#include <Inventor/threads/SbMutex.h>
29
30
class
SbThreadAutoLock
31
{
32
protected
:
33
SbMutex
* mutex;
34
SbThreadMutex *
recmutex
;
35
36
public
:
37
SbThreadAutoLock
(
SbMutex
* mutexptr) {
38
this->mutex = mutexptr;
39
this->mutex->
lock
();
40
this->
recmutex
= NULL;
41
}
42
SbThreadAutoLock
(SbThreadMutex * mutexptr) {
43
this->
recmutex
= mutexptr;
44
this->
recmutex
->lock();
45
this->mutex = NULL;
46
}
47
48
~SbThreadAutoLock
() {
49
if
(this->mutex) this->mutex->
unlock
();
50
if
(this->
recmutex
) this->
recmutex
->unlock();
51
}
52
};
53
54
#endif // !COIN_SBTHREADAUTOLOCK_H
Copyright © 1998-2010 by
Kongsberg Oil & Gas Technologies
. All rights reserved.
Generated on Tue Dec 4 2012 01:50:15 for Coin by
Doxygen
1.8.2.