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

📄 fg__timermanager_8h-source.html

📁 《道法自然》书的源码FishGUI,一个跨平台的界面库
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=gb2312"><title>FishGUI: FG_TimerManager.h Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- 制作者 Doxygen 1.3.6 --><div class="qindex"><a class="qindex" href="main.html">首页</a> | <a class="qindex" href="modules.html">模块</a> | <a class="qindex" href="hierarchy.html">类继承关系</a> | <a class="qindex" href="classes.html">按字典顺序排序的列表</a> | <a class="qindex" href="annotated.html">组合类型列表</a> | <a class="qindex" href="files.html">文件列表</a> | <a class="qindex" href="functions.html">组合类型成员</a> | <a class="qindex" href="globals.html">文件成员</a></div><h1>FG_TimerManager.h</h1><a href="FG__TimerManager_8h.html">浏览该文件的文档。</a><div class="fragment"><pre>00001 <span class="comment">/*--------------------------------------------------------------------------</span>00002 <span class="comment"></span>00003 <span class="comment">        FG_TimerManager.h - 定时器管理器类的头文件</span>00004 <span class="comment"></span>00005 <span class="comment">        本程序是FishGUI软件的一部分</span>00006 <span class="comment"></span>00007 <span class="comment">        版权所有 (C) 2003,2004 王咏武</span>00008 <span class="comment">        http://www.contextfree.net/wangyw/</span>00009 <span class="comment"></span>00010 <span class="comment">----------------------------------------------------------------------------</span>00011 <span class="comment"></span>00012 <span class="comment">        作者对 FishGUI 软件及其所有源代码授权如下:</span>00013 <span class="comment"></span>00014 <span class="comment">        允许任何个人、组织、机构、企业无偿获得、修改、使用、重新发布 FishGUI 软</span>00015 <span class="comment">        件及其源代码,或按照有偿或者无偿的方式发行基于 FishGUI 源代码的全部或部</span>00016 <span class="comment">        分内容开发的软件产品,——但行使以上权利时,须遵守以下约定:</span>00017 <span class="comment"></span>00018 <span class="comment">        1、重新发布 FishGUI 软件及其源代码时,不得隐去软件及其源代码中原有的版</span>00019 <span class="comment">           权信息和开发者标识。</span>00020 <span class="comment"></span>00021 <span class="comment">        2、发行基于 FishGUI 源代码的全部或部分内容开发的软件产品时,必须在产品</span>00022 <span class="comment">           的显著位置标明以下字样:</span>00023 <span class="comment"></span>00024 <span class="comment">           【本产品的一部分功能是基于王咏武在 FishGUI 软件中的工作完成的】</span>00025 <span class="comment"></span>00026 <span class="comment">        3、在正式出版物中引用 FishGUI 的文档、源代码或注释内容的,应注明软件的</span>00027 <span class="comment">           原作者为王咏武。</span>00028 <span class="comment"></span>00029 <span class="comment">--------------------------------------------------------------------------*/</span>00039 <span class="preprocessor">#ifndef FG_TIMERMANAGER_H_HEADER_INCLUDED_C0A3F06D</span>00040 <span class="preprocessor"></span><span class="preprocessor">#define FG_TIMERMANAGER_H_HEADER_INCLUDED_C0A3F06D</span>00041 <span class="preprocessor"></span>00042 <span class="preprocessor">#include "../Utility/FG_Utility.h"</span>00043 <span class="preprocessor">#include "../OSAdaptor/FG_OSAdaptor.h"</span>00044 <span class="keyword">class </span><a class="code" href="classFG__Object.html">FG_Object</a>;00045 00046 <span class="comment">//##ModelId=3FD884F5022C</span><a name="l00051"></a><a class="code" href="classFG__Timer.html">00051</a> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classFG__Timer.html">FG_Timer</a>00052 {00053 <span class="keyword">public</span>:00054     <span class="comment">//##ModelId=3FD884F70347</span><a name="l00061"></a><a class="code" href="classFG__Timer.html#a0">00061</a> <span class="comment"></span>    <a class="code" href="classFG__Timer.html#a0">FG_Timer</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pTarget, <a class="code" href="group__Utility.html#ga0">BYTE</a> timerID, <a class="code" href="group__Utility.html#ga2">DWORD</a> dwInterval) 00062         : <a class="code" href="classFG__Timer.html#o0">m_TimerID</a>(timerID), <a class="code" href="classFG__Timer.html#o1">m_dwInterval</a>(dwInterval), <a class="code" href="classFG__Timer.html#o2">m_dwCount</a>(dwInterval),00063         m_pTarget(pTarget)00064         {}00065 00070     <span class="comment">//##ModelId=40BB6F970366</span>00071     <span class="keywordtype">void</span> <a class="code" href="classFG__Timer.html#a1">Tick</a>(<span class="keywordtype">void</span>);00072 00073     <span class="comment">//##ModelId=3FD884F702E4</span><a name="l00074"></a><a class="code" href="classFG__Timer.html#o0">00074</a>     <a class="code" href="group__Utility.html#ga0">BYTE</a>        <a class="code" href="classFG__Timer.html#o0">m_TimerID</a>;          00075     <span class="comment">//##ModelId=3FD884F702F8</span><a name="l00076"></a><a class="code" href="classFG__Timer.html#o1">00076</a>     <a class="code" href="group__Utility.html#ga2">DWORD</a>       <a class="code" href="classFG__Timer.html#o1">m_dwInterval</a>;       00077     <span class="comment">//##ModelId=3FD884F70316</span><a name="l00078"></a><a class="code" href="classFG__Timer.html#o2">00078</a>     <a class="code" href="group__Utility.html#ga2">DWORD</a>       <a class="code" href="classFG__Timer.html#o2">m_dwCount</a>;          00079     <span class="comment">//##ModelId=3FD884F7032A</span><a name="l00080"></a><a class="code" href="classFG__Timer.html#o3">00080</a>     <a class="code" href="classFG__Object.html">FG_Object</a> * m_pTarget;          00081 };00082 00083 <span class="comment">//##ModelId=3F5C4ED700C1</span><a name="l00088"></a><a class="code" href="classFG__TimerManager.html">00088</a> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classFG__TimerManager.html">FG_TimerManager</a> : <span class="keyword">public</span> <a class="code" href="classFG__OSMsgObserver.html">FG_OSMsgObserver</a>00089 {00090 <span class="keyword">public</span>:00091     <span class="comment">//##ModelId=3F5C57A203B7</span>00096 <span class="comment"></span>    <span class="keyword">static</span> <a class="code" href="classFG__TimerManager.html">FG_TimerManager</a> * <a class="code" href="classFG__TimerManager.html#e0">GetTimerManager</a>(<span class="keywordtype">void</span>);00097 00098     <span class="comment">//##ModelId=3F71AB2000E8</span>00101 <span class="comment"></span>    <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classFG__TimerManager.html#e1">DeleteTimerManager</a>(<span class="keywordtype">void</span>);00102 00103     <span class="comment">//##ModelId=3F5C57A30001</span>00104     <span class="keywordtype">bool</span> <a class="code" href="classFG__TimerManager.html#a0">StartTimer</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pTarget, <a class="code" href="group__Utility.html#ga0">BYTE</a> timerID, <a class="code" href="group__Utility.html#ga2">DWORD</a> dwInterval);00105     <span class="comment">//##ModelId=3F5DAA150033</span>00106     <span class="keywordtype">bool</span> <a class="code" href="classFG__TimerManager.html#a1">KillTimer</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pTarget, <a class="code" href="group__Utility.html#ga0">BYTE</a> timerID);00107     <span class="comment">//##ModelId=3F71AB20011A</span>00108     <span class="keywordtype">bool</span> <a class="code" href="classFG__TimerManager.html#a2">KillObjectTimer</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pTarget);00109     <span class="comment">//##ModelId=3F71AB20014C</span>00110     <span class="keywordtype">bool</span> <a class="code" href="classFG__TimerManager.html#a3">IsTimerStart</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pTarget, <a class="code" href="group__Utility.html#ga0">BYTE</a> timerID);00111     <span class="comment">//##ModelId=3F5DAA150051</span>00112     <span class="keywordtype">bool</span> <a class="code" href="classFG__TimerManager.html#a4">KillAllTimer</a>();00113 00114     <span class="comment">//##ModelId=3F5C57A30138</span>00115     <span class="keywordtype">void</span> <a class="code" href="classFG__TimerManager.html#a5">OSMessage</a>(<a class="code" href="structFG__Message.html">FG_Message</a> * pMsg);00116 00117 <span class="keyword">protected</span>:00118     <span class="comment">//##ModelId=3F5C57A3028C</span>00123 <span class="comment"></span>    <a class="code" href="classFG__TimerManager.html#b0">FG_TimerManager</a>();00124 00125     <span class="comment">//##ModelId=3F71AB20019C</span><a name="l00130"></a><a class="code" href="classFG__TimerManager.html#b1">00130</a> <span class="comment"></span>    <a class="code" href="classFG__TimerManager.html#b1">~FG_TimerManager</a>() { <a class="code" href="classFG__TimerManager.html#a4">KillAllTimer</a>(); }00131 00132 <span class="keyword">private</span>:00133     <span class="comment">//##ModelId=3F5DD9650193</span><a name="l00134"></a><a class="code" href="classFG__TimerManager.html#y0">00134</a>     <span class="keyword">typedef</span> <a class="code" href="classFG__SList.html">FG_SList&lt;FG_Timer&gt;</a> <a class="code" href="classFG__SList.html">FG_TIMERLIST</a>;    00136     <span class="comment">//##ModelId=3F5DD9660087</span><a name="l00137"></a><a class="code" href="classFG__TimerManager.html#r0">00137</a>     <a class="code" href="classFG__SList.html">FG_TIMERLIST</a> <a class="code" href="classFG__TimerManager.html#r0">m_TimerList</a>;                   00139     <span class="comment">//##ModelId=3F5C57A2039C</span>00140     <span class="keyword">static</span> <a class="code" href="classFG__TimerManager.html">FG_TimerManager</a> * <a class="code" href="classFG__TimerManager.html#v0">m_pTimerManager</a>;   00141 };00142 00147 <a class="code" href="classFG__TimerManager.html">FG_TimerManager</a> * <a class="code" href="group__Framework.html#ga0">FG_GetTimerManager</a>(<span class="keywordtype">void</span>);00148 00149 <span class="comment">//##ModelId=3FD884F5002D</span><a name="l00154"></a><a class="code" href="classFG__CheckTimer.html">00154</a> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classFG__CheckTimer.html">FG_CheckTimer</a> : <span class="keyword">public</span> <a class="code" href="classFG__ListCheck.html">FG_ListCheck</a>&lt;FG_Timer&gt;00155 {00156 <span class="keyword">public</span>:00157     <span class="comment">//##ModelId=3FD884F60165</span><a name="l00163"></a><a class="code" href="classFG__CheckTimer.html#a0">00163</a> <span class="comment"></span>    <a class="code" href="classFG__CheckTimer.html#a0">FG_CheckTimer</a>(<a class="code" href="classFG__Object.html">FG_Object</a> * pObject, <a class="code" href="group__Utility.html#ga0">BYTE</a> timerID) : m_pTarget(pObject), m_TimerID(timerID) {}00164 00165     <span class="comment">//##ModelId=3FD884F60183</span><a name="l00174"></a><a class="code" href="classFG__CheckTimer.html#a1">00174</a> <span class="comment"></span>    <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classFG__CheckTimer.html#a1">FindIt</a>(<span class="keyword">const</span> <a class="code" href="classFG__Timer.html">FG_Timer</a> * pTimer) { <span class="keywordflow">return</span> (pTimer-&gt;<a class="code" href="classFG__Timer.html#o3">m_pTarget</a> == m_pTarget &amp;&amp; pTimer-&gt;<a class="code" href="classFG__Timer.html#o0">m_TimerID</a> == m_TimerID); }00175 00176 <span class="keyword">private</span>:00177     <span class="comment">//##ModelId=3FD884F60134</span><a name="l00178"></a><a class="code" href="classFG__CheckTimer.html#r0">00178</a>     <a class="code" href="classFG__Object.html">FG_Object</a> * m_pTarget;          00179     <span class="comment">//##ModelId=3FD884F60152</span><a name="l00180"></a><a class="code" href="classFG__CheckTimer.html#r1">00180</a>     <a class="code" href="group__Utility.html#ga0">BYTE</a>        m_TimerID;          00181 };00182 00183 <span class="preprocessor">#endif </span><span class="comment">/* FG_TIMERMANAGER_H_HEADER_INCLUDED_C0A3F06D */</span>00184 </pre></div><hr><center>由 DoxyGen 1.3.6 于 Wed Jun 9 22:34:41 2004 生成<br>版权所有 (C) 2003,2004 王咏武</body></html>

⌨️ 快捷键说明

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