Gizmo3D

gzMutex.h File Reference

Mutex functionality for Gizmo3D. More...

#include "gzBasicTypes.h"
#include "gzDebug.h"
#include "gzMemory.h"
#include "gzReference.h"
#include "windows.h"

Go to the source code of this file.

Classes

class  gzMutex
class  gzGuard< T >
class  gzClassGuard< T >
class  gzBodyGuard
class  gzThreadSafeReference
class  gzEvent
 A waitable event that can trigger thread execution. More...
class  gzSemaphore

Defines

#define GZ_BODYGUARD   gzBodyGuard _guard_
#define GZ_SEMA_READ   (0)
#define GZ_SEMA_WRITE   (gzThread::getThreadID())
#define GZ_DECLARE_RECYCLE_DATA_EXPORT(moduleName, exportDef)
#define GZ_DECLARE_RECYCLE_DATA_EXPORT_IMP(moduleName)   template <class T> gzMutex gzRecycleData_##moduleName<T>::s_recycleDataLock=gzMutex(FALSE); template <class T> gzRefList<gzRefData<T> > gzRecycleData_##moduleName<T>::s_recycleData=gzRefList<gzRefData<T> >(FALSE); template <class T> gzULong gzRecycleData_##moduleName<T>::s_maxStorageCount=0xfffffffful; template <class T> gzBool gzRecycleData_##moduleName<T>::s_enabled=TRUE;
#define gzRecycleDataExport(moduleName)   gzRecycleData_##moduleName
#define COMMON_EXPORT
#define gzRecycleData   gzRecycleDataExport(gzBase)
#define GZ_DECLARE_RECYCLE_DATA_IMP   GZ_DECLARE_RECYCLE_DATA_EXPORT_IMP(gzBase)

Typedefs

typedef CRITICAL_SECTION gzSyncType
typedef HANDLE gzEventHandle

Functions

 GZ_DECLARE_REFPTR (gzEvent)
 GZ_DECLARE_RECYCLE_DATA_EXPORT (gzBase, COMMON_EXPORT)


Detailed Description

Mutex functionality for Gizmo3D.

The Mutex class is vital for multithread applications. If you use gzThread you must remember to protect your data with gzMutex or gzGuard

Definition in file gzMutex.h.


Define Documentation

#define COMMON_EXPORT
 

Definition at line 697 of file gzMutex.h.

#define GZ_BODYGUARD   gzBodyGuard _guard_
 

Definition at line 198 of file gzMutex.h.

#define GZ_DECLARE_RECYCLE_DATA_EXPORT moduleName,
exportDef   ) 
 

Definition at line 399 of file gzMutex.h.

#define GZ_DECLARE_RECYCLE_DATA_EXPORT_IMP moduleName   )     template <class T> gzMutex gzRecycleData_##moduleName<T>::s_recycleDataLock=gzMutex(FALSE); template <class T> gzRefList<gzRefData<T> > gzRecycleData_##moduleName<T>::s_recycleData=gzRefList<gzRefData<T> >(FALSE); template <class T> gzULong gzRecycleData_##moduleName<T>::s_maxStorageCount=0xfffffffful; template <class T> gzBool gzRecycleData_##moduleName<T>::s_enabled=TRUE;
 

Definition at line 690 of file gzMutex.h.

#define GZ_DECLARE_RECYCLE_DATA_IMP   GZ_DECLARE_RECYCLE_DATA_EXPORT_IMP(gzBase)
 

Definition at line 702 of file gzMutex.h.

#define GZ_SEMA_READ   (0)
 

Definition at line 382 of file gzMutex.h.

#define GZ_SEMA_WRITE   (gzThread::getThreadID())
 

Definition at line 383 of file gzMutex.h.

#define gzRecycleData   gzRecycleDataExport(gzBase)
 

Definition at line 701 of file gzMutex.h.

#define gzRecycleDataExport moduleName   )     gzRecycleData_##moduleName
 

Definition at line 693 of file gzMutex.h.


Typedef Documentation

typedef HANDLE gzEventHandle
 

Definition at line 41 of file gzMutex.h.

typedef CRITICAL_SECTION gzSyncType
 

Definition at line 40 of file gzMutex.h.


Function Documentation

GZ_DECLARE_RECYCLE_DATA_EXPORT gzBase  ,
COMMON_EXPORT 
 

GZ_DECLARE_REFPTR gzEvent   ) 
 


Documentation for Gizmo3D generated at Wed Feb 20 11:54:13 2008 by   Saab Training Systems AB, ¸ (c) 2003-and beyond