ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

gmutex.c
Go to the documentation of this file.
00001 /*
00002  * PROJECT:         ReactOS Kernel
00003  * LICENSE:         GPL - See COPYING in the top level directory
00004  * FILE:            ntoskrnl/ke/gate.c
00005  * PURPOSE:         Implements Guarded Mutex
00006  * PROGRAMMERS:     Alex Ionescu (alex.ionescu@reactos.org)
00007  *                  Filip Navara (navaraf@reactos.org)
00008  */
00009 
00010 /* INCLUDES ******************************************************************/
00011 
00012 #include <ntoskrnl.h>
00013 #define NDEBUG
00014 #include <debug.h>
00015 
00016 /* Undefine some macros we implement here */
00017 #undef KeInitializeGuardedMutex
00018 #undef KeAcquireGuardedMutex
00019 #undef KeReleaseGuardedMutex
00020 #undef KeAcquireGuardedMutexUnsafe
00021 #undef KeReleaseGuardedMutexUnsafe
00022 #undef KeTryToAcquireGuardedMutex
00023 
00024 /* PUBLIC FUNCTIONS **********************************************************/
00025 
00026 /*
00027  * @implemented
00028  */
00029 VOID
00030 FASTCALL
00031 KeInitializeGuardedMutex(OUT PKGUARDED_MUTEX GuardedMutex)
00032 {
00033     /* Call the inline */
00034     _KeInitializeGuardedMutex(GuardedMutex);
00035 }
00036 
00037 /*
00038  * @implemented
00039  */
00040 VOID
00041 FASTCALL
00042 KeAcquireGuardedMutex(IN PKGUARDED_MUTEX GuardedMutex)
00043 {
00044     /* Call the inline */
00045     _KeAcquireGuardedMutex(GuardedMutex);
00046 }
00047 
00048 /*
00049  * @implemented
00050  */
00051 VOID
00052 FASTCALL
00053 KeReleaseGuardedMutex(IN OUT PKGUARDED_MUTEX GuardedMutex)
00054 {
00055     /* Call the inline */
00056     _KeReleaseGuardedMutex(GuardedMutex);
00057 }
00058 
00059 /*
00060  * @implemented
00061  */
00062 VOID
00063 FASTCALL
00064 KeAcquireGuardedMutexUnsafe(IN OUT PKGUARDED_MUTEX GuardedMutex)
00065 {
00066     /* Call the inline */
00067     _KeAcquireGuardedMutexUnsafe(GuardedMutex);
00068 }
00069 
00070 /*
00071  * @implemented
00072  */
00073 VOID
00074 FASTCALL
00075 KeReleaseGuardedMutexUnsafe(IN OUT PKGUARDED_MUTEX GuardedMutex)
00076 {
00077     /* Call the inline */
00078     _KeReleaseGuardedMutexUnsafe(GuardedMutex);
00079 }
00080 
00081 /*
00082  * @implemented
00083  */
00084 BOOLEAN
00085 FASTCALL
00086 KeTryToAcquireGuardedMutex(IN OUT PKGUARDED_MUTEX GuardedMutex)
00087 {
00088     /* Call the inline */
00089     return _KeTryToAcquireGuardedMutex(GuardedMutex);
00090 }
00091 
00098 VOID
00099 NTAPI
00100 _KeEnterGuardedRegion(VOID)
00101 {
00102     /* Use the inlined version */
00103     KeEnterGuardedRegion();
00104 }
00105 
00111 VOID
00112 NTAPI
00113 _KeLeaveGuardedRegion(VOID)
00114 {
00115     /* Use the inlined version */
00116     KeLeaveGuardedRegion();
00117 }
00118 
00119 /* EOF */

Generated on Sun May 27 2012 04:37:31 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.