1 /*++ 2 3 Copyright (c) Microsoft Corporation. All rights reserved. 4 5 Module Name: 6 7 FxDeviceControlAPI.cpp 8 9 Abstract: 10 11 This module implements external DDIs for control devices 12 13 Author: 14 15 16 17 Environment: 18 19 Both kernel and user mode 20 21 Revision History: 22 23 --*/ 24 25 #include "coreprivshared.hpp" 26 27 extern "C" { 28 // #include "FxDeviceControlAPI.tmh" 29 } 30 31 extern "C" { 32 __drv_maxIRQL(DISPATCH_LEVEL)33__drv_maxIRQL(DISPATCH_LEVEL) 34 VOID 35 STDCALL 36 WDFEXPORT(WdfControlFinishInitializing)( 37 __in 38 PWDF_DRIVER_GLOBALS DriverGlobals, 39 __in 40 WDFDEVICE Device 41 ) 42 { 43 PFX_DRIVER_GLOBALS pFxDriverGlobals; 44 FxDevice* pDevice; 45 46 FxObjectHandleGetPtrAndGlobals(GetFxDriverGlobals(DriverGlobals), 47 Device, 48 FX_TYPE_DEVICE, 49 (PVOID*) &pDevice, 50 &pFxDriverGlobals); 51 52 MxDeviceObject device(pDevice->GetDeviceObject()); 53 54 if (pDevice->IsLegacy()) { 55 // pDevice->m_PkgWmi->Register(); __REACTOS__ 56 device.SetFlags(device.GetFlags() & ~DO_DEVICE_INITIALIZING); 57 } 58 else { 59 DoTraceLevelMessage( 60 pFxDriverGlobals, TRACE_LEVEL_ERROR, TRACINGDEVICE, 61 "WDFDEVICE %p not a control device", Device); 62 FxVerifierDbgBreakPoint(pFxDriverGlobals); 63 } 64 } 65 66 } // entire extern "C" for the file 67 68