source: trunk/src/tools/qcriticalsection_p.cpp@ 7

Last change on this file since 7 was 2, checked in by dmik, 20 years ago

Imported xplatform parts of the official release 3.3.1 from Trolltech

  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1/****************************************************************************
2** $Id: qcriticalsection_p.cpp 2 2005-11-16 15:49:26Z dmik $
3**
4** Implementation of QCriticalSection class
5**
6** Copyright (C) 2001 Trolltech AS. All rights reserved.
7**
8** This file is part of the tools module of the Qt GUI Toolkit.
9**
10** This file may be distributed under the terms of the Q Public License
11** as defined by Trolltech AS of Norway and appearing in the file
12** LICENSE.QPL included in the packaging of this file.
13**
14** This file may be distributed and/or modified under the terms of the
15** GNU General Public License version 2 as published by the Free Software
16** Foundation and appearing in the file LICENSE.GPL included in the
17** packaging of this file.
18**
19** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
20** licenses may use this file in accordance with the Qt Commercial License
21** Agreement provided with the Software.
22**
23** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
24** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
25**
26** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
27** information about Qt Commercial License Agreements.
28** See http://www.trolltech.com/qpl/ for QPL licensing information.
29** See http://www.trolltech.com/gpl/ for GPL licensing information.
30**
31** Contact info@trolltech.com if any conditions of this licensing are
32** not clear to you.
33**
34**********************************************************************/
35
36#if defined(QT_THREAD_SUPPORT)
37
38#include "qt_windows.h"
39
40#include <private/qcriticalsection_p.h>
41
42class QCriticalSectionPrivate
43{
44public:
45 QCriticalSectionPrivate() {}
46
47 CRITICAL_SECTION section;
48};
49
50
51QCriticalSection::QCriticalSection()
52{
53 d = new QCriticalSectionPrivate;
54 InitializeCriticalSection( &d->section );
55}
56
57QCriticalSection::~QCriticalSection()
58{
59 DeleteCriticalSection( &d->section );
60 delete d;
61}
62
63void QCriticalSection::enter()
64{
65 EnterCriticalSection( &d->section );
66}
67
68void QCriticalSection::leave()
69{
70 LeaveCriticalSection( &d->section );
71}
72
73#endif
Note: See TracBrowser for help on using the repository browser.