Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

35 lines
907 B

// Gemplus (C) 1999
// Version 1.0
// Author: Sergey Ivanov
// Date of creation - 18.05.1999
// Change log:
//
#ifndef WDM_LOCK_INT
#define WDM_LOCK_INT
#include "generic.h"
#include "lock.h"
#pragma PAGEDCODE
class CWDMLock : public CLock
{
public:
NTSTATUS m_Status;
SAFE_DESTRUCTORS();
virtual VOID dispose(VOID){self_delete();};
protected:
CWDMLock(){m_Status = STATUS_SUCCESS;};
virtual ~CWDMLock(){};
public:
static CLock* create();
virtual VOID initializeSpinLock(PKSPIN_LOCK SpinLock);
virtual VOID acquireSpinLock(PKSPIN_LOCK SpinLock, PKIRQL oldIrql);
virtual VOID releaseSpinLock(PKSPIN_LOCK SpinLock, KIRQL oldIrql);
virtual VOID acquireCancelSpinLock(PKIRQL Irql);
virtual VOID releaseCancelSpinLock(KIRQL Irql);
virtual LONG interlockedIncrement(IN PLONG Addend);
virtual LONG interlockedDecrement(IN PLONG Addend);
};
#endif//CWDMLock