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

📄 qos_8h-source.html

📁 pwlib开发文档
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>qos.h Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.2.18 --><center><a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center><hr><h1>qos.h</h1><a href="qos_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>00002 <span class="comment"> * qos.h</span>00003 <span class="comment"> *</span>00004 <span class="comment"> * QOS class used by PWLIB dscp or Windows GQOS implementation.</span>00005 <span class="comment"> *</span>00006 <span class="comment"> * Copyright (c) 2003 AliceStreet Ltd</span>00007 <span class="comment"> *</span>00008 <span class="comment"> * The contents of this file are subject to the Mozilla Public License</span>00009 <span class="comment"> * Version 1.0 (the "License"); you may not use this file except in</span>00010 <span class="comment"> * compliance with the License. You may obtain a copy of the License at</span>00011 <span class="comment"> * http://www.mozilla.org/MPL/</span>00012 <span class="comment"> *</span>00013 <span class="comment"> * Software distributed under the License is distributed on an "AS IS"</span>00014 <span class="comment"> * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See</span>00015 <span class="comment"> * the License for the specific language governing rights and limitations</span>00016 <span class="comment"> * under the License.</span>00017 <span class="comment"> *</span>00018 <span class="comment"> * Contributor(s): ______________________________________.</span>00019 <span class="comment"> *</span>00020 <span class="comment"> * $Log: qos.h,v $</span>00021 <span class="comment"> * Revision 1.2  2003/10/27 03:51:38  csoutheren</span>00022 <span class="comment"> * Added ifdef to disable QoS code on systems that do not support it</span>00023 <span class="comment"> *</span>00024 <span class="comment"> * Revision 1.1  2003/10/27 03:20:10  csoutheren</span>00025 <span class="comment"> * Initial version of QoS implementation</span>00026 <span class="comment"> *   Thanks to Henry Harrison of AliceStreet</span>00027 <span class="comment"> *</span>00028 <span class="comment"> *</span>00029 <span class="comment"> */</span>00030 00031 <span class="preprocessor">#ifndef _PQOS</span>00032 <span class="preprocessor"></span><span class="preprocessor">#define _PQOS</span>00033 <span class="preprocessor"></span>00034 <span class="preprocessor">#ifdef P_USE_PRAGMA</span>00035 <span class="preprocessor"></span><span class="preprocessor">#pragma interface</span>00036 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00037 <span class="preprocessor"></span>00038 <span class="preprocessor">#if P_HAS_QOS</span>00039 <span class="preprocessor"></span><span class="preprocessor">#ifdef _WIN32</span>00040 <span class="preprocessor"></span><span class="preprocessor">#include &lt;winsock2.h&gt;</span>00041 <span class="preprocessor">#include &lt;Ws2tcpip.h&gt;</span>00042 <span class="preprocessor">#include &lt;qossp.h&gt;</span>00043 <span class="preprocessor">#endif  // _WIN32</span>00044 <span class="preprocessor"></span><span class="preprocessor">#endif  // P_HAS_QOS</span>00045 <span class="preprocessor"></span>00046 <span class="preprocessor">#ifndef QOS_NOT_SPECIFIED</span><a name="l00047"></a><a class="code" href="qos_8h.html#a0">00047</a> <span class="preprocessor"></span><span class="preprocessor">#define QOS_NOT_SPECIFIED 0xFFFFFFFF</span>00048 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00049 <span class="preprocessor"></span>00050 <span class="preprocessor">#ifndef SERVICETYPE</span><a name="l00051"></a><a class="code" href="qos_8h.html#a1">00051</a> <span class="preprocessor"></span><span class="preprocessor">#define SERVICETYPE DWORD</span>00052 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00053 <span class="preprocessor"></span>00054 <span class="preprocessor">#ifndef SERVICETYPE_GUARANTEED</span><a name="l00055"></a><a class="code" href="qos_8h.html#a2">00055</a> <span class="preprocessor"></span><span class="preprocessor">#define SERVICETYPE_GUARANTEED 0x00000003</span>00056 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00057 <span class="preprocessor"></span>00058 <span class="preprocessor">#ifndef SERVICETYPE_CONTROLLEDLOAD</span><a name="l00059"></a><a class="code" href="qos_8h.html#a3">00059</a> <span class="preprocessor"></span><span class="preprocessor">#define SERVICETYPE_CONTROLLEDLOAD 0x00000002</span>00060 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00061 <span class="preprocessor"></span>00062 <span class="preprocessor">#ifndef SERVICETYPE_BESTEFFORT</span><a name="l00063"></a><a class="code" href="qos_8h.html#a4">00063</a> <span class="preprocessor"></span><span class="preprocessor">#define SERVICETYPE_BESTEFFORT 0x00000001</span>00064 <span class="preprocessor"></span><span class="preprocessor">#endif</span>00065 <span class="preprocessor"></span><a name="l00066"></a><a class="code" href="qos_8h.html#a5">00066</a> <span class="preprocessor">#define SERVICETYPE_PNOTDEFINED 0xFFFFFFFF</span>00067 <span class="preprocessor"></span><a name="l00068"></a><a class="code" href="classPQoS.html">00068</a> <span class="keyword">class </span><a class="code" href="classPQoS.html">PQoS</a> : <span class="keyword">public</span> <a class="code" href="classPObject.html">PObject</a>00069 {00070     <a class="code" href="object_8h.html#a27">PCLASSINFO</a>(<a class="code" href="classPQoS.html">PQoS</a>, <a class="code" href="classPObject.html">PObject</a>);00071 00072 <span class="keyword">public</span>:00073     <a class="code" href="classPQoS.html#a0">PQoS</a>();00074     <a class="code" href="classPQoS.html#a0">PQoS</a>(DWORD avgBytesPerSec,00075          DWORD winServiceType,00076          <span class="keywordtype">int</span> DSCPalternative = -1,00077          DWORD maxFrameBytes = 1500,00078          DWORD peakBytesPerSec = <a class="code" href="qos_8h.html#a0">QOS_NOT_SPECIFIED</a>);00079     <a class="code" href="classPQoS.html#a0">PQoS</a>(<span class="keywordtype">int</span> DSCPvalue);00080 00081     <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#a3">SetAvgBytesPerSec</a>(DWORD avgBytesPerSec);00082     <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#a4">SetWinServiceType</a>(DWORD winServiceType);00083     <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#a5">SetDSCP</a>(<span class="keywordtype">int</span> DSCPvalue);00084     <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#a6">SetMaxFrameBytes</a>(DWORD maxFrameBytes);00085     <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#a7">SetPeakBytesPerSec</a>(DWORD peakBytesPerSec);00086 <a name="l00087"></a><a class="code" href="classPQoS.html#a8">00087</a>     DWORD <a class="code" href="classPQoS.html#a8">GetTokenRate</a>()<span class="keyword"> const       </span>{ <span class="keywordflow">return</span> <a class="code" href="classPQoS.html#n1">tokenRate</a>;}<a name="l00088"></a><a class="code" href="classPQoS.html#a9">00088</a>     DWORD <a class="code" href="classPQoS.html#a9">GetTokenBucketSize</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classPQoS.html#n2">tokenBucketSize</a>;}<a name="l00089"></a><a class="code" href="classPQoS.html#a10">00089</a>     DWORD <a class="code" href="classPQoS.html#a10">GetPeakBandwidth</a>()<span class="keyword"> const   </span>{ <span class="keywordflow">return</span> <a class="code" href="classPQoS.html#n3">peakBandwidth</a>;}<a name="l00090"></a><a class="code" href="classPQoS.html#a11">00090</a>     DWORD <a class="code" href="classPQoS.html#a11">GetServiceType</a>()<span class="keyword"> const     </span>{ <span class="keywordflow">return</span> <a class="code" href="classPQoS.html#n4">serviceType</a>;}<a name="l00091"></a><a class="code" href="classPQoS.html#a12">00091</a>     <span class="keywordtype">int</span> <a class="code" href="classPQoS.html#a12">GetDSCP</a>()<span class="keyword"> const              </span>{ <span class="keywordflow">return</span> <a class="code" href="classPQoS.html#n0">dscp</a>;}00092 00093     <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPQoS.html#d0">SetDSCPAlternative</a>(DWORD winServiceType,00094                                    UINT <a class="code" href="classPQoS.html#n0">dscp</a>);<a name="l00095"></a><a class="code" href="classPQoS.html#p0">00095</a>     <span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="classPQoS.html#p0">bestEffortDSCP</a>;<a name="l00096"></a><a class="code" href="classPQoS.html#p1">00096</a>     <span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="classPQoS.html#p1">controlledLoadDSCP</a>;<a name="l00097"></a><a class="code" href="classPQoS.html#p2">00097</a>     <span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="classPQoS.html#p2">guaranteedDSCP</a>;00098 00099   <span class="keyword">protected</span>:<a name="l00100"></a><a class="code" href="classPQoS.html#n0">00100</a>     <span class="keywordtype">int</span> <a class="code" href="classPQoS.html#n0">dscp</a>;<a name="l00101"></a><a class="code" href="classPQoS.html#n1">00101</a>     DWORD <a class="code" href="classPQoS.html#n1">tokenRate</a>;<a name="l00102"></a><a class="code" href="classPQoS.html#n2">00102</a>     DWORD <a class="code" href="classPQoS.html#n2">tokenBucketSize</a>;<a name="l00103"></a><a class="code" href="classPQoS.html#n3">00103</a>     DWORD <a class="code" href="classPQoS.html#n3">peakBandwidth</a>;<a name="l00104"></a><a class="code" href="classPQoS.html#n4">00104</a>     DWORD <a class="code" href="classPQoS.html#n4">serviceType</a>;00105 00106 };00107 00108 <span class="preprocessor">#endif // _PQOS</span></pre></div><hr><address style="align: right;"><small>Generated on Wed Sep 29 22:44:11 2004 for PWLib by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address></body></html>

⌨️ 快捷键说明

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