zoukankan      html  css  js  c++  java
  • [转]WM/WINCE代码研读系列之Power Management(4)

    下面是PmSetSystemPowerState函数的详细内容

    PmSetSystemPowerState
    {
        PlatformSendSystemPowerState
        {
            SendSystemPowerState
            {
                  PlatformMapPowerStateHint;   //将StateFlags转化成电源状态名
                  {
                            对应关系如下:
                            POWER_STATE_ON -- _T("on");
                            POWER_STATE_IDLE -- _T("screenoff");
                            POWER_STATE_SUSPEND -- _T("suspend");
                            POWER_STATE_OFF -- _T("suspend");
                            POWER_STATE_CRITICAL -- _T("suspend");
                            POWER_STATE_RESET -- _T("reboot");
                            POWER_STATE_USERIDLE -- _T("useridle");
                    }
     
                    //下面两个函数由要设置的电源状态名得到相应的对象指针
                    SystemStateToActivityState
                    GetStateObject
     
                    AppsCanRequestState           //判断要设置的电源状态是否可以被设置
                    if((dwOptions & POWER_DUMPDW)!=0)
                    {
                              //Options 参数带POWER_DUMPDW 时会产生Dr. Watson dump file.
                              CaptureDumpFileOnDevice; 
                     }
                     pNewPowerState->EnterState();//这里是实质的设置函数
     
                     //将电源状态的状态机转至设置的系统电源状态
                     pNewPowerState = SetSystemState(pNewPowerState);
                     m_pCurPowerState = pNewPowerState;
     
                 //将ResumingSuspendTimeout,SuspendTimeout,BacklightTimeout,UserIdleTimeout这几个定时器复位
                     ReInitTimeOuts(FALSE);
     
                    //通知PowerStateManager::ThreadRun,这里没有做实质性内容
                    SetEvent(m_hSystemApiCalled);
              }
          }
    }

  • 相关阅读:
    真机测试 iOS -- Coule not find Developer Disk Image
    XX
    Mac 控制 Mac
    在 mac 的 idea 中,查找 tomcat 解析 jsp 文件 后产生的 servlet 的位置
    mac idea 配置tomcat
    idea 普通Java项目转到web项目
    idea 新建java项目
    在mac上使用hexo和github创建博客
    解决git clone卡顿的一种思路
    10.【转载】nodeJS中读写文件方法的区别
  • 原文地址:https://www.cnblogs.com/answer/p/1956254.html
Copyright © 2011-2022 走看看