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

📄 categorystream_8hh-source.html

📁 log4cpp 的参考文档, 一个非常好用的C++ log 类库
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>log4cpp: CategoryStream.hh Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.4.2 --><div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div><div class="nav"><a class="el" href="dir_000001.html">include</a>&nbsp;/&nbsp;<a class="el" href="dir_000002.html">log4cpp</a></div><h1>CategoryStream.hh</h1><a href="CategoryStream_8hh.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 <span class="comment">/*</span>00002 <span class="comment"> * CategoryStream.hh</span>00003 <span class="comment"> *</span>00004 <span class="comment"> * Copyright 2001, LifeLine Networks BV (www.lifeline.nl). All rights reserved.</span>00005 <span class="comment"> * Copyright 2001, Bastiaan Bakker. All rights reserved.</span>00006 <span class="comment"> *</span>00007 <span class="comment"> * See the COPYING file for the terms of usage and distribution.</span>00008 <span class="comment"> */</span>00009 00010 <span class="preprocessor">#ifndef _LOG4CPP_CATEGORYSTREAM_HH</span>00011 <span class="preprocessor"></span><span class="preprocessor">#define _LOG4CPP_CATEGORYSTREAM_HH</span>00012 <span class="preprocessor"></span>00013 <span class="preprocessor">#include &lt;<a class="code" href="Portability_8hh.html">log4cpp/Portability.hh</a>&gt;</span>00014 <span class="preprocessor">#include &lt;<a class="code" href="Priority_8hh.html">log4cpp/Priority.hh</a>&gt;</span>00015 <span class="preprocessor">#include &lt;ios&gt;</span>00016 <span class="preprocessor">#ifdef LOG4CPP_HAVE_SSTREAM</span>00017 <span class="preprocessor"></span><span class="preprocessor">#include &lt;sstream&gt;</span>00018 <span class="preprocessor">#endif</span>00019 <span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="Manipulator_8hh.html">log4cpp/Manipulator.hh</a>&gt;</span>00020 00021 <span class="keyword">namespace </span>log4cpp {00022 <a name="l00023"></a><a class="code" href="namespacelog4cpp.html#a2">00023</a>     <span class="keyword">class </span><a class="code" href="Export_8hh.html#a0">LOG4CPP_EXPORT</a> Category;00024 <a name="l00029"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html">00029</a>     <span class="keyword">class </span><a class="code" href="Export_8hh.html#a0">LOG4CPP_EXPORT</a> CategoryStream {00030         <span class="keyword">public</span>:00031 <a name="l00036"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#w3">00036</a>         <span class="keyword">typedef</span> <span class="keyword">enum</span> {00037             ENDLINE = 0,00038                         EOL             = 000039         } Separator;00040 00047         CategoryStream(Category&amp; category, <a class="code" href="classlog4cpp_1_1Priority.html#w0">Priority::Value</a> priority);00048 00052         ~CategoryStream();00053         <a name="l00058"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#a2">00058</a>         <span class="keyword">inline</span> Category&amp; getCategory()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _category; };00059 <a name="l00064"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#a3">00064</a>         <span class="keyword">inline</span> <a class="code" href="classlog4cpp_1_1Priority.html#w0">Priority::Value</a> getPriority() const throw() { 00065             <span class="keywordflow">return</span> _priority; 00066         };00067 00075         CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a7">operator&lt;&lt;</a>(Separator separator);00076 00081         <span class="keywordtype">void</span> flush();00082 <a name="l00088"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#a6">00088</a>         <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a7">operator&lt;&lt;</a>(<span class="keyword">const</span> T&amp; t) {00089             <span class="keywordflow">if</span> (getPriority() != <a class="code" href="classlog4cpp_1_1Priority.html#w11w10">Priority::NOTSET</a>) {00090                 <span class="keywordflow">if</span> (!_buffer) {00091                     <span class="keywordflow">if</span> (!(_buffer = <span class="keyword">new</span> <a class="code" href="classstd_1_1ostringstream.html">std::ostringstream</a>)) {00092                         <span class="comment">// XXX help help help</span>00093                     }00094                 }00095                 (*_buffer) &lt;&lt; t;00096             }00097             <span class="keywordflow">return</span> *<span class="keyword">this</span>;00098         }<a name="l00099"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#a7">00099</a>                 <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a7">operator&lt;&lt;</a>(<span class="keyword">const</span> std::string&amp; t) {00100             <span class="keywordflow">if</span> (getPriority() != <a class="code" href="classlog4cpp_1_1Priority.html#w11w10">Priority::NOTSET</a>) {00101                 <span class="keywordflow">if</span> (!_buffer) {00102                     <span class="keywordflow">if</span> (!(_buffer = <span class="keyword">new</span> <a class="code" href="classstd_1_1ostringstream.html">std::ostringstream</a>)) {00103                         <span class="comment">// XXX help help help</span>00104                     }00105                 }00106                 (*_buffer) &lt;&lt; t;00107             }00108             <span class="keywordflow">return</span> *<span class="keyword">this</span>;00109         }<a name="l00110"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#a8">00110</a>                 <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a7">operator&lt;&lt;</a>(<span class="keyword">const</span> std::wstring&amp; t) {00111             <span class="keywordflow">if</span> (getPriority() != <a class="code" href="classlog4cpp_1_1Priority.html#w11w10">Priority::NOTSET</a>) {00112                 <span class="keywordflow">if</span> (!_wbuffer) {00113                     <span class="keywordflow">if</span> (!(_wbuffer = <span class="keyword">new</span> std::wostringstream)) {00114                         <span class="comment">// XXX help help help</span>00115                     }00116                 }00117                 (*_wbuffer) &lt;&lt; t;00118             }00119             <span class="keywordflow">return</span> *<span class="keyword">this</span>;00120         }00121 00125                 std::streamsize <a class="code" href="classlog4cpp_1_1width.html">width</a>(std::streamsize wide );00126 00127 00128         <span class="keyword">private</span>:00129         Category&amp; _category;00130         <a class="code" href="classlog4cpp_1_1Priority.html#w0">Priority::Value</a> _priority;00131                 <span class="keyword">union </span>{00132                         <a class="code" href="classstd_1_1ostringstream.html">std::ostringstream</a>* _buffer;00133                         std::wostringstream* _wbuffer;00134                 };00135 00136                 <span class="keyword">public</span>:<a name="l00137"></a><a class="code" href="classlog4cpp_1_1CategoryStream.html#w0">00137</a>                 <span class="keyword">typedef</span> CategoryStream&amp; (*cspf) (CategoryStream&amp;);00138 00139                 CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a7">operator&lt;&lt; </a>(cspf);00140 00144 <span class="keyword">friend</span>  <a class="code" href="Export_8hh.html#a0">LOG4CPP_EXPORT</a> CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a5">eol</a> (CategoryStream&amp; os);00145 00149 <span class="keyword">friend</span>  <a class="code" href="Export_8hh.html#a0">LOG4CPP_EXPORT</a> CategoryStream&amp; <a class="code" href="namespacelog4cpp.html#a6">left</a> (CategoryStream&amp; os);00150    };00151 }00152 <span class="preprocessor">#endif // _LOG4CPP_CATEGORYSTREAM_HH</span></pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Jul 29 14:07:33 2005 for log4cpp by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.2 </small></address></body></html>

⌨️ 快捷键说明

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