- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# FUtils/FUCriticalSection.h

Go to the documentation of this file.

    00001 /*
    00002     Copyright (C) 2005-2007 Feeling Software Inc.
    00003     Portions of the code are:
    00004     Copyright (C) 2005-2007 Sony Computer Entertainment America
    00005
    00006     MIT License: http://www.opensource.org/licenses/mit-license.php
    00007 */
    00008
    00014 #ifndef _FU_CRITICAL_SECTION_H_
    00015 #define _FU_CRITICAL_SECTION_H_
    00016
    00017 #ifdef __APPLE__
    00018 #include <CoreServices/CoreServices.h>
    00019 #endif
    00020
    00028 class FCOLLADA_EXPORT FUCriticalSection
    00029 {
    00030 private:
    00031 #ifdef WIN32
    00032     CRITICAL_SECTION criticalSection; // WIN32
    00033 #elif defined (__APPLE__)
    00034     //Do something here.
    00035     MPCriticalRegionID criticalSection;
    00036 #elif defined (LINUX)
    00037 #else
    00038 #warning "FUCriticalSection: Critical section not implemented for other platforms."
    00039 #endif
    00040
    00041 public:
    00043     FUCriticalSection();
    00044
    00046     ~FUCriticalSection();
    00047
    00051     void Enter();
    00052
    00054     void Leave();
    00055 };
    00056
    00057 #endif // _FU_CRITICAL_SECTION_H_
    00058