ReactOS 0.4.16-dev-106-g10b08aa
FxCallbackLock Class Referenceabstract

#include <fxcallbacklock.hpp>

Inheritance diagram for FxCallbackLock:
Collaboration diagram for FxCallbackLock:

Public Member Functions

 FxCallbackLock (PFX_DRIVER_GLOBALS FxDriverGlobals)
 
virtual ~FxCallbackLock ()
 
virtual void Initialize (FxObject *ParentObject)=0
 
virtual void Lock (__out PKIRQL PreviousIrql)=0
 
virtual void Unlock (__in KIRQL PreviousIrql)=0
 
virtual _Must_inspect_result_ BOOLEAN IsOwner (VOID)=0
 
VOID CheckOwnership (VOID)
 
- Public Member Functions inherited from FxGlobalsStump
 FxGlobalsStump (__in PFX_DRIVER_GLOBALS FxDriverGlobals)
 
PFX_DRIVER_GLOBALS GetDriverGlobals (VOID)
 
- Public Member Functions inherited from FxStump
PVOID operator new (__in size_t Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals)
 
PVOID operator new (__in size_t Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in POOL_TYPE PoolType)
 
VOID operator delete (__in PVOID pointer)
 
PVOID operator new[] (__in size_t Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals)
 
VOID operator delete[] (__in PVOID pointer)
 

Public Attributes

KIRQL m_PreviousIrql
 

Protected Attributes

MxThread m_OwnerThread
 
ULONG m_RecursionCount
 
FxVerifierLockm_Verifier
 

Additional Inherited Members

- Protected Member Functions inherited from FxStump
 FxStump (VOID)
 

Detailed Description

Definition at line 49 of file fxcallbacklock.hpp.

Constructor & Destructor Documentation

◆ FxCallbackLock()

FxCallbackLock::FxCallbackLock ( PFX_DRIVER_GLOBALS  FxDriverGlobals)
inline

Definition at line 70 of file fxcallbacklock.hpp.

72 :
73 FxGlobalsStump(FxDriverGlobals)
74 {
78 }
FxVerifierLock * m_Verifier
MxThread m_OwnerThread
#define NULL
Definition: types.h:112

◆ ~FxCallbackLock()

virtual FxCallbackLock::~FxCallbackLock ( )
inlinevirtual

Definition at line 80 of file fxcallbacklock.hpp.

81 {
82 }

Member Function Documentation

◆ CheckOwnership()

VOID FxCallbackLock::CheckOwnership ( VOID  )
inline

Definition at line 111 of file fxcallbacklock.hpp.

114 {
116
118
119 //
120 // If verify locks is on, catch drivers
121 // returning with the lock released.
122 //
124 if (IsOwner() == FALSE) {
127 "Callback: Driver released the callback lock 0x%p",
128 this);
130 }
131 }
132 }
virtual _Must_inspect_result_ BOOLEAN IsOwner(VOID)=0
#define TRACINGDEVICE
Definition: dbgtrace.h:58
#define FALSE
Definition: types.h:117
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
PFX_DRIVER_GLOBALS pFxDriverGlobals
FxVerifierDbgBreakPoint(pFxDriverGlobals)
#define TRACE_LEVEL_ERROR
Definition: storswtr.h:27
PFX_DRIVER_GLOBALS GetDriverGlobals(VOID)
Definition: fxstump.hpp:98
BOOLEAN FxVerifierLock
Definition: fxglobals.h:451

Referenced by FxCallbackMutexLock::Unlock(), and FxCallbackSpinLock::Unlock().

◆ Initialize()

virtual void FxCallbackLock::Initialize ( FxObject ParentObject)
pure virtual

◆ IsOwner()

virtual _Must_inspect_result_ BOOLEAN FxCallbackLock::IsOwner ( VOID  )
pure virtual

◆ Lock()

◆ Unlock()

Member Data Documentation

◆ m_OwnerThread

◆ m_PreviousIrql

KIRQL FxCallbackLock::m_PreviousIrql

Definition at line 66 of file fxcallbacklock.hpp.

◆ m_RecursionCount

ULONG FxCallbackLock::m_RecursionCount
protected

◆ m_Verifier


The documentation for this class was generated from the following file: