331{
339
340
350
351
354
355
358
359
364 {
365
367 DbgPrint(
"CompBattAddDevice: Could not attach to LowerDevice.\n");
370 }
371
372
375
376
379 DeviceExtension->
Flags = 0;
381
382
386 MiniportInfo.
Context = DeviceExtension;
395
396
400 {
401
404 }
405
406
408}
#define BATTERY_CLASS_MAJOR_VERSION
PBCLASS_QUERY_INFORMATION_CALLBACK BCLASS_QUERY_INFORMATION
PBCLASS_SET_STATUS_NOTIFY_CALLBACK BCLASS_SET_STATUS_NOTIFY
PBCLASS_DISABLE_STATUS_NOTIFY_CALLBACK BCLASS_DISABLE_STATUS_NOTIFY
#define BATTERY_CLASS_MINOR_VERSION
PBCLASS_QUERY_STATUS_CALLBACK BCLASS_QUERY_STATUS
PBCLASS_QUERY_TAG_CALLBACK BCLASS_QUERY_TAG
BCLASSAPI NTSTATUS NTAPI BatteryClassInitializeDevice(PBATTERY_MINIPORT_INFO MiniportInfo, PVOID *ClassData)
#define FILE_DEVICE_SECURE_OPEN
NTSTATUS NTAPI CompBattQueryInformation(_In_ PCOMPBATT_DEVICE_EXTENSION DeviceExtension, _In_ ULONG Tag, _In_ BATTERY_QUERY_INFORMATION_LEVEL InfoLevel, _In_opt_ LONG AtRate, _In_ PVOID Buffer, _In_ ULONG BufferLength, _Out_ PULONG ReturnedLength)
NTSTATUS NTAPI CompBattQueryStatus(_In_ PCOMPBATT_DEVICE_EXTENSION DeviceExtension, _In_ ULONG Tag, _Out_ PBATTERY_STATUS BatteryStatus)
Queries the battery status of each individiual connected battery with the composite battery and combi...
NTSTATUS NTAPI CompBattQueryTag(_In_ PCOMPBATT_DEVICE_EXTENSION DeviceExtension, _Out_ PULONG Tag)
NTSTATUS NTAPI CompBattSetStatusNotify(_In_ PCOMPBATT_DEVICE_EXTENSION DeviceExtension, _In_ ULONG BatteryTag, _In_ PBATTERY_NOTIFY BatteryNotify)
Sets a new configuration battery wait status settings of each battery. The purpose of this is so that...
NTSTATUS NTAPI CompBattDisableStatusNotify(_In_ PCOMPBATT_DEVICE_EXTENSION DeviceExtension)
#define COMPBATT_DEBUG_WARN
#define COMPBATT_DEBUG_ERR
#define NT_SUCCESS(StatCode)
#define InitializeListHead(ListHead)
_Outptr_ PUSB_DEVICE_HANDLE _In_ PUSB_DEVICE_HANDLE _In_ USHORT _In_ PUSB_PORT_PATH _Out_ PUSB_CD_ERROR_INFORMATION _In_ USHORT _In_ PDEVICE_OBJECT PdoDeviceObject
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
PDEVICE_OBJECT NTAPI IoAttachDeviceToDeviceStack(IN PDEVICE_OBJECT SourceDevice, IN PDEVICE_OBJECT TargetDevice)
NTSTATUS NTAPI IoCreateDevice(IN PDRIVER_OBJECT DriverObject, IN ULONG DeviceExtensionSize, IN PUNICODE_STRING DeviceName, IN DEVICE_TYPE DeviceType, IN ULONG DeviceCharacteristics, IN BOOLEAN Exclusive, OUT PDEVICE_OBJECT *DeviceObject)
VOID NTAPI IoDetachDevice(IN PDEVICE_OBJECT TargetDevice)
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
NTSTATUS NTAPI IoCreateSymbolicLink(IN PUNICODE_STRING SymbolicLinkName, IN PUNICODE_STRING DeviceName)
#define FILE_DEVICE_BATTERY
BCLASS_QUERY_INFORMATION QueryInformation
BCLASS_SET_STATUS_NOTIFY SetStatusNotify
BCLASS_SET_INFORMATION SetInformation
PUNICODE_STRING DeviceName
BCLASS_DISABLE_STATUS_NOTIFY DisableStatusNotify
BCLASS_QUERY_STATUS QueryStatus
BCLASS_QUERY_TAG QueryTag
PDEVICE_OBJECT DeviceObject
PDEVICE_OBJECT AttachedDevice
#define RtlZeroMemory(Destination, Length)
#define STATUS_UNSUCCESSFUL
_In_ PDEVICE_OBJECT DeviceObject
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING SymbolicLinkName
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
FORCEINLINE VOID ExInitializeFastMutex(_Out_ PFAST_MUTEX FastMutex)