1 /* 2 * PROJECT: ReactOS Kernel - Vista+ APIs 3 * LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later) 4 * PURPOSE: Ke functions of Vista+ 5 * COPYRIGHT: 2016 Pierre Schweitzer (pierre@reactos.org) 6 * 2020 Victor Perevertkin (victor.perevertkin@reactos.org) 7 */ 8 9 #include <ntdef.h> 10 #include <ntifs.h> 11 12 NTKRNLVISTAAPI 13 ULONG 14 NTAPI 15 KeQueryActiveProcessorCount(OUT PKAFFINITY ActiveProcessors OPTIONAL) 16 { 17 RTL_BITMAP Bitmap; 18 KAFFINITY ActiveMap = KeQueryActiveProcessors(); 19 20 if (ActiveProcessors != NULL) 21 { 22 *ActiveProcessors = ActiveMap; 23 } 24 25 RtlInitializeBitMap(&Bitmap, (PULONG)&ActiveMap, sizeof(ActiveMap) * 8); 26 return RtlNumberOfSetBits(&Bitmap); 27 } 28 29 NTKRNLVISTAAPI 30 USHORT 31 NTAPI 32 KeQueryHighestNodeNumber() 33 { 34 return 0; 35 } 36 37 NTKRNLVISTAAPI 38 USHORT 39 NTAPI 40 KeGetCurrentNodeNumber() 41 { 42 return 0; 43 } 44 45 _IRQL_requires_max_(DISPATCH_LEVEL) 46 NTKRNLVISTAAPI 47 BOOLEAN 48 NTAPI 49 KeSetCoalescableTimer( 50 _Inout_ PKTIMER Timer, 51 _In_ LARGE_INTEGER DueTime, 52 _In_ ULONG Period, 53 _In_ ULONG TolerableDelay, 54 _In_opt_ PKDPC Dpc) 55 { 56 return KeSetTimerEx(Timer, DueTime, Period, Dpc); 57 } 58