1 /*++ 2 3 Copyright (c) Microsoft Corporation 4 5 ModuleName: 6 7 MxDriverObjectKm.h 8 9 Abstract: 10 11 Kernel Mode implementation of Driver Object defined in MxDriverObject.h 12 13 --*/ 14 15 #pragma once 16 17 typedef DRIVER_ADD_DEVICE MdDriverAddDeviceType, *MdDriverAddDevice; 18 typedef DRIVER_UNLOAD MdDriverUnloadType, *MdDriverUnload; 19 typedef DRIVER_DISPATCH MdDriverDispatchType, *MdDriverDispatch; 20 21 #include "mxdriverobject.h" 22 23 __inline 24 PDRIVER_ADD_DEVICE 25 MxDriverObject::GetDriverExtensionAddDevice( 26 VOID 27 ) 28 { 29 return m_DriverObject->DriverExtension->AddDevice; 30 } 31 32 __inline 33 VOID 34 MxDriverObject::SetDriverExtensionAddDevice( 35 _In_ MdDriverAddDevice Value 36 ) 37 { 38 m_DriverObject->DriverExtension->AddDevice = Value; 39 } 40 41 __inline 42 MdDriverUnload 43 MxDriverObject::GetDriverUnload( 44 VOID 45 ) 46 { 47 return m_DriverObject->DriverUnload; 48 } 49 50 __inline 51 VOID 52 MxDriverObject::SetDriverUnload( 53 _In_ MdDriverUnload Value 54 ) 55 { 56 m_DriverObject->DriverUnload = Value; 57 } 58 59 60 __inline 61 VOID 62 MxDriverObject::SetMajorFunction( 63 _In_ UCHAR i, 64 _In_ MdDriverDispatch Value 65 ) 66 { 67 m_DriverObject->MajorFunction[i] = Value; 68 } 69 70 71 72 73