power.cpp
资源名称:hge181.rar [点击查看]
上传用户:jnfxsk
上传日期:2022-06-16
资源大小:3675k
文件大小:1k
源码类别:
游戏引擎
开发平台:
Visual C++
- /*
- ** Haaf's Game Engine 1.8
- ** Copyright (C) 2003-2007, Relish Games
- ** hge.relishgames.com
- **
- ** Core functions implementation: power status
- */
- #include "hge_impl.h"
- void HGE_Impl::_InitPowerStatus()
- {
- hKrnl32 = LoadLibrary("kernel32.dll");
- if(hKrnl32 != NULL)
- lpfnGetSystemPowerStatus = (GetSystemPowerStatusFunc)GetProcAddress(hKrnl32, "GetSystemPowerStatus");
- _UpdatePowerStatus();
- }
- void HGE_Impl::_UpdatePowerStatus()
- {
- SYSTEM_POWER_STATUS ps;
- if(lpfnGetSystemPowerStatus != NULL && lpfnGetSystemPowerStatus(&ps))
- {
- if(ps.ACLineStatus == 1)
- {
- nPowerStatus = HGEPWR_AC;
- }
- else if(ps.BatteryFlag < 128)
- {
- nPowerStatus = ps.BatteryLifePercent;
- }
- else
- {
- nPowerStatus = HGEPWR_UNSUPPORTED;
- }
- }
- else
- {
- nPowerStatus = HGEPWR_UNSUPPORTED;
- }
- }
- void HGE_Impl::_DonePowerStatus()
- {
- if(hKrnl32 != NULL) FreeLibrary(hKrnl32);
- }