⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sh_timer.h

📁 rsa算法打的一个包
💻 H
字号:
// SH_Timer.h: interface for the SH_Timer class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SH_TIMER_H__30EE6BA7_8ECE_479A_921A_0A5D986585B3__INCLUDED_)
#define AFX_SH_TIMER_H__30EE6BA7_8ECE_479A_921A_0A5D986585B3__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "SH_Object.h"

/**
 *if SH_TimerCallback is not null ,then virtual function OnTimer
 *will not be called
 *
**/
typedef int (*SH_TimerCallback)(DWORD idEvent,LPVOID pUserData);

class AFX_EXT_CLASS SH_Timer : public SH_Object  
{
public:
	SH_Timer();
	SH_Timer(SH_TimerCallback lpfnCallback);
	virtual ~SH_Timer();
    
    DWORD GetTimerId() const;
    
    VOID SetCallback(SH_TimerCallback lpfnCallback);
    SH_TimerCallback GetCallback();

    int    GetElpase() const;
    int    GetKernelElpase() const;
    HANDLE GetTimerHandle() const;

    BOOL SetTimer(UINT elapse,LPVOID pUserData = NULL);
    BOOL KillTimer();

    BOOL SetKernelTimer(UINT elapse,LPVOID pUserData = NULL);
    BOOL KillKernelTimer();
    
    BOOL Wait(int ms);

    virtual int OnTimer(LPVOID pUserData){return 0;}
protected:
    VOID SetElapse(const int ms);
    VOID SetKernelElapse(const int ms);
private:
    SH_TimerCallback m_lpfnCallback;
    DWORD            m_dwTimerId;
    HANDLE           m_hTimer;
    int              m_nElapse;
    int              m_nKernelElapse;
};

#endif // !defined(AFX_SH_TIMER_H__30EE6BA7_8ECE_479A_921A_0A5D986585B3__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -