Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenrwlock.h
Go to the documentation of this file.
00001 #ifndef __CROSS_NT_RWLOCK__H__ 00002 #define __CROSS_NT_RWLOCK__H__ 00003 00004 #ifndef MAXIMUM_PROCESSORS 00005 #define MAXIMUM_PROCESSORS 32 00006 #endif 00007 00008 typedef union _NDIS_RW_LOCK_REFCOUNT { 00009 unsigned int RefCount; 00010 UCHAR cacheLine[16]; // One refCount per cache line 00011 } NDIS_RW_LOCK_REFCOUNT; 00012 00013 typedef struct _NDIS_RW_LOCK { 00014 union { 00015 struct { 00016 KSPIN_LOCK SpinLock; 00017 PVOID Context; 00018 }; 00019 UCHAR Reserved[16]; 00020 }; 00021 00022 NDIS_RW_LOCK_REFCOUNT RefCount[MAXIMUM_PROCESSORS]; 00023 } NDIS_RW_LOCK, *PNDIS_RW_LOCK; 00024 00025 typedef struct _LOCK_STATE { 00026 USHORT LockState; 00027 KIRQL OldIrql; 00028 } LOCK_STATE, *PLOCK_STATE; 00029 00030 #define RWLOCK_STATE_FREE 0 00031 #define RWLOCK_STATE_READ_ACQUIRED 1 00032 #define RWLOCK_STATE_WRITE_ACQUIRED 2 00033 #define RWLOCK_STATE_RECURSIVE 3 00034 #define RWLOCK_STATE_RELEASED 0xffff 00035 00036 #define RWLOCK_FOR_WRITE TRUE 00037 #define RWLOCK_FOR_READ FALSE 00038 00039 #endif // __CROSS_NT_RWLOCK__H__ Generated on Sat May 26 2012 04:26:58 for ReactOS by
1.7.6.1
|