1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> 3 <title>pvlogger.h Source File</title> 4 <link href="doxygen.css" rel="stylesheet" type="text/css"> 5 </head><body> 6 <!-- Generated by Doxygen 1.2.18 --> 7 <center> 8 <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> </center> 9 <hr><h1>pvlogger.h</h1><a href="pvlogger_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 10 00009 <span class="preprocessor">#ifndef PVLOGGER_H_INCLUDED</span> 11 00010 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_H_INCLUDED</span> 12 00011 <span class="preprocessor"></span> 13 00012 <span class="preprocessor">#ifndef OSCL_BASE_H_INCLUDED</span> 14 00013 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__base_8h.html">oscl_base.h</a>"</span> 15 00014 <span class="preprocessor">#endif</span> 16 00015 <span class="preprocessor"></span> 17 00016 <span class="preprocessor">#ifndef OSCL_VECTOR_H_INCLUDED</span> 18 00017 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__vector_8h.html">oscl_vector.h</a>"</span> 19 00018 <span class="preprocessor">#endif</span> 20 00019 <span class="preprocessor"></span> 21 00020 <span class="preprocessor">#ifndef OSCL_DEFALLOC_H_INCLUDED</span> 22 00021 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__defalloc_8h.html">oscl_defalloc.h</a>"</span> 23 00022 <span class="preprocessor">#endif</span> 24 00023 <span class="preprocessor"></span> 25 00024 <span class="preprocessor">#ifndef OSCL_SHARED_PTR_H</span> 26 00025 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__shared__ptr_8h.html">oscl_shared_ptr.h</a>"</span> 27 00026 <span class="preprocessor">#endif</span> 28 00027 <span class="preprocessor"></span> 29 00028 <span class="preprocessor">#ifndef OSCL_BASE_ALLOC_H_INCLUDED</span> 30 00029 <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="oscl__base__alloc_8h.html">oscl_base_alloc.h</a>"</span> 31 00030 <span class="preprocessor">#endif</span> 32 00031 <span class="preprocessor"></span> 33 00032 34 <a name="l00033"></a><a class="code" href="pvlogger_8h.html#a37">00033</a> <span class="keyword">const</span> int32 <a class="code" href="pvlogger_8h.html#a37">PVLOGGER_LEVEL_UNINTIALIZED</a> = -1; 35 00034 36 00035 37 00036 38 00038 <span class="comment">// The instrumentation layer allows groups</span> 39 00039 <span class="comment">// of messages to be compiled in or out of</span> 40 00040 <span class="comment">// the code based on a build-time parameter.</span> 41 00042 <span class="comment"></span> 42 <a name="l00055"></a><a class="code" href="pvlogger_8h.html#a0">00055</a> <span class="comment"></span><span class="preprocessor">#define PVLOGMSG_INST_REL 0</span> 43 00056 <span class="preprocessor"></span> 44 <a name="l00063"></a><a class="code" href="pvlogger_8h.html#a1">00063</a> <span class="preprocessor">#define PVLOGMSG_INST_PROF 1</span> 45 00064 <span class="preprocessor"></span> 46 <a name="l00074"></a><a class="code" href="pvlogger_8h.html#a2">00074</a> <span class="preprocessor">#define PVLOGMSG_INST_HLDBG 2</span> 47 00075 <span class="preprocessor"></span> 48 <a name="l00085"></a><a class="code" href="pvlogger_8h.html#a3">00085</a> <span class="preprocessor">#define PVLOGMSG_INST_MLDBG 3</span> 49 00086 <span class="preprocessor"></span> 50 <a name="l00096"></a><a class="code" href="pvlogger_8h.html#a4">00096</a> <span class="preprocessor">#define PVLOGMSG_INST_LLDBG 4</span> 51 00097 <span class="preprocessor"></span> 52 00098 <span class="comment">/*</span> 53 00099 <span class="comment">** Default logger instrumentation level. To override this</span> 54 00100 <span class="comment">** setting, define PVLOGGER_INST_LEVEL in the osclconfig.h file.</span> 55 00101 <span class="comment">** Possible values and the resulting intrumentation:</span> 56 00102 <span class="comment">**</span> 57 00103 <span class="comment">** PVLOGGER_INST_LEVEL 0 : No logging. All logging statements compiled out.</span> 58 00104 <span class="comment">** PVLOGGER_INST_LEVEL 1 : Release level only.</span> 59 00105 <span class="comment">** PVLOGGER_INST_LEVEL 2 : Release level + profile level</span> 60 00106 <span class="comment">** PVLOGGER_INST_LEVEL 3 : Release level + profile level + high-level debug</span> 61 00107 <span class="comment">** PVLOGGER_INST_LEVEL 4 : Release level + profile level + high-level debug + mid-level debug</span> 62 00108 <span class="comment">** PVLOGGER_INST_LEVEL 5 & above : Release level + profile level + high-level debug</span> 63 00109 <span class="comment">** + mid-level debug + low-level debug</span> 64 00110 <span class="comment">*/</span> 65 00111 <span class="preprocessor">#ifndef PVLOGGER_INST_LEVEL</span> 66 00112 <span class="preprocessor"></span><span class="preprocessor">#if defined(NDEBUG)</span> 67 00113 <span class="preprocessor"></span><span class="comment">/* Release mode-- No logging */</span> 68 00114 <span class="preprocessor">#define PVLOGGER_INST_LEVEL 0</span> 69 00115 <span class="preprocessor"></span><span class="preprocessor">#else</span> 70 00116 <span class="preprocessor"></span><span class="comment">/* Debug mode-- Complete logging */</span> 71 <a name="l00117"></a><a class="code" href="pvlogger_8h.html#a5">00117</a> <span class="preprocessor">#define PVLOGGER_INST_LEVEL 5</span> 72 00118 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 73 00119 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 74 00120 <span class="preprocessor"></span> 75 00121 76 00122 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL<1)</span> 77 00123 <span class="preprocessor"></span> 78 00124 <span class="comment">/*</span> 79 00125 <span class="comment">** Disable and compile-out all logging</span> 80 00126 <span class="comment">*/</span> 81 00127 <span class="preprocessor">#define PVLOGGER_LOGMSG(IL, LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 82 00128 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V(IL, LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 83 00129 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN(IL, LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 84 00130 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V(IL, LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 85 00131 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOG_USE_ONLY(x)</span> 86 00132 <span class="preprocessor"></span> 87 00133 <span class="preprocessor">#else //PVLOGGER_INST_LEVEL</span> 88 00134 <span class="preprocessor"></span> 89 00135 <span class="comment">/*</span> 90 00136 <span class="comment">** Internal use macros that make the logging calls to PVLogger.</span> 91 00137 <span class="comment">*/</span> 92 <a name="l00138"></a><a class="code" href="pvlogger_8h.html#a6">00138</a> <span class="preprocessor">#define _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)\</span> 93 00139 <span class="preprocessor">{\</span> 94 00140 <span class="preprocessor"> if (LOGGER)\</span> 95 00141 <span class="preprocessor"> {\</span> 96 00142 <span class="preprocessor"> if (LOGGER->IsActive(LEVEL))\</span> 97 00143 <span class="preprocessor"> {\</span> 98 00144 <span class="preprocessor"> LOGGER->LogMsgString MESSAGE;\</span> 99 00145 <span class="preprocessor"> }\</span> 100 00146 <span class="preprocessor"> }\</span> 101 00147 <span class="preprocessor">}</span> 102 00148 <span class="preprocessor"></span> 103 <a name="l00149"></a><a class="code" href="pvlogger_8h.html#a7">00149</a> <span class="preprocessor">#define _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)\</span> 104 00150 <span class="preprocessor">{\</span> 105 00151 <span class="preprocessor"> if (LOGGER)\</span> 106 00152 <span class="preprocessor"> {\</span> 107 00153 <span class="preprocessor"> if (LOGGER->IsActive(LEVEL))\</span> 108 00154 <span class="preprocessor"> {\</span> 109 00155 <span class="preprocessor"> LOGGER->LogMsgStringV MESSAGE;\</span> 110 00156 <span class="preprocessor"> }\</span> 111 00157 <span class="preprocessor"> }\</span> 112 00158 <span class="preprocessor">}</span> 113 00159 <span class="preprocessor"></span> 114 <a name="l00160"></a><a class="code" href="pvlogger_8h.html#a8">00160</a> <span class="preprocessor">#define _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE) \</span> 115 00161 <span class="preprocessor">{\</span> 116 00162 <span class="preprocessor"> if (LOGGER)\</span> 117 00163 <span class="preprocessor"> {\</span> 118 00164 <span class="preprocessor"> if (LOGGER->IsActive(LEVEL))\</span> 119 00165 <span class="preprocessor"> {\</span> 120 00166 <span class="preprocessor"> LOGGER->LogMsgBuffers MESSAGE;\</span> 121 00167 <span class="preprocessor"> }\</span> 122 00168 <span class="preprocessor"> }\</span> 123 00169 <span class="preprocessor">}</span> 124 00170 <span class="preprocessor"></span> 125 <a name="l00171"></a><a class="code" href="pvlogger_8h.html#a9">00171</a> <span class="preprocessor">#define _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE) \</span> 126 00172 <span class="preprocessor">{\</span> 127 00173 <span class="preprocessor"> if (LOGGER)\</span> 128 00174 <span class="preprocessor"> {\</span> 129 00175 <span class="preprocessor"> if (LOGGER->IsActive(LEVEL))\</span> 130 00176 <span class="preprocessor"> {\</span> 131 00177 <span class="preprocessor"> LOGGER->LogMsgBuffersV MESSAGE;\</span> 132 00178 <span class="preprocessor"> }\</span> 133 00179 <span class="preprocessor"> }\</span> 134 00180 <span class="preprocessor">}</span> 135 00181 <span class="preprocessor"></span> 136 00182 <span class="comment">/*</span> 137 00183 <span class="comment">** In case some compilers cannot support the instrumentation-level macros,</span> 138 00184 <span class="comment">** they can be disabled by defining PVLOGGER_INST_LEVEL_SUPPORT to 0</span> 139 00185 <span class="comment">** in their osclconfig.h. If instrumentation level is not supported, then</span> 140 00186 <span class="comment">** all instrumentation levels will be compiled in.</span> 141 00187 <span class="comment">**</span> 142 00188 <span class="comment">** If PVLOGGER_INST_LEVEL_SUPPORT is not defined, the default is set here to allow</span> 143 00189 <span class="comment">** compile-time instrumentation level support.</span> 144 00190 <span class="comment">*/</span> 145 00191 <span class="preprocessor">#ifndef PVLOGGER_INST_LEVEL_SUPPORT</span> 146 <a name="l00192"></a><a class="code" href="pvlogger_8h.html#a10">00192</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_INST_LEVEL_SUPPORT 1</span> 147 00193 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 148 00194 <span class="preprocessor"></span> 149 00195 <span class="preprocessor">#if !(PVLOGGER_INST_LEVEL_SUPPORT)</span> 150 00196 <span class="preprocessor"></span> 151 00197 <span class="comment">/*</span> 152 00198 <span class="comment">** A set of logging macros that ignore the instrumentation level.</span> 153 00199 <span class="comment">** All instrumentation levels will be compiled in.</span> 154 00200 <span class="comment">*/</span> 155 00201 <span class="preprocessor">#define PVLOGGER_LOGMSG(IL, LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 156 00202 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V(IL, LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 157 00203 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN(IL, LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 158 00204 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V(IL, LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 159 00205 <span class="preprocessor"></span> 160 00206 <span class="preprocessor">#else //PVLOGGER_INST_LEVEL_SUPPORT</span> 161 00207 <span class="preprocessor"></span> 162 00208 <span class="comment">/*</span> 163 00209 <span class="comment">** This set of macros compiles the logging statements in or out based on the instrumtation</span> 164 00210 <span class="comment">** level.</span> 165 00211 <span class="comment">*/</span> 166 00212 167 00213 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL > PVLOGMSG_INST_REL)</span> 168 <a name="l00214"></a><a class="code" href="pvlogger_8h.html#a11">00214</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 169 <a name="l00215"></a><a class="code" href="pvlogger_8h.html#a12">00215</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 170 <a name="l00216"></a><a class="code" href="pvlogger_8h.html#a13">00216</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 171 <a name="l00217"></a><a class="code" href="pvlogger_8h.html#a14">00217</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 172 00218 <span class="preprocessor"></span><span class="preprocessor">#else</span> 173 00219 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 174 00220 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 175 00221 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 176 00222 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_REL(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 177 00223 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 178 00224 <span class="preprocessor"></span> 179 00225 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL > PVLOGMSG_INST_PROF)</span> 180 <a name="l00226"></a><a class="code" href="pvlogger_8h.html#a15">00226</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 181 <a name="l00227"></a><a class="code" href="pvlogger_8h.html#a16">00227</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 182 <a name="l00228"></a><a class="code" href="pvlogger_8h.html#a17">00228</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 183 <a name="l00229"></a><a class="code" href="pvlogger_8h.html#a18">00229</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 184 00230 <span class="preprocessor"></span><span class="preprocessor">#else</span> 185 00231 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 186 00232 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 187 00233 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 188 00234 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_PROF(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 189 00235 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 190 00236 <span class="preprocessor"></span> 191 00237 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL > PVLOGMSG_INST_HLDBG)</span> 192 <a name="l00238"></a><a class="code" href="pvlogger_8h.html#a19">00238</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 193 <a name="l00239"></a><a class="code" href="pvlogger_8h.html#a20">00239</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 194 <a name="l00240"></a><a class="code" href="pvlogger_8h.html#a21">00240</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 195 <a name="l00241"></a><a class="code" href="pvlogger_8h.html#a22">00241</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 196 00242 <span class="preprocessor"></span><span class="preprocessor">#else</span> 197 00243 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 198 00244 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 199 00245 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 200 00246 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_HLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 201 00247 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 202 00248 <span class="preprocessor"></span> 203 00249 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL > PVLOGMSG_INST_MLDBG)</span> 204 <a name="l00250"></a><a class="code" href="pvlogger_8h.html#a23">00250</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 205 <a name="l00251"></a><a class="code" href="pvlogger_8h.html#a24">00251</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 206 <a name="l00252"></a><a class="code" href="pvlogger_8h.html#a25">00252</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 207 <a name="l00253"></a><a class="code" href="pvlogger_8h.html#a26">00253</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_V_INST_MLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 208 00254 <span class="preprocessor"></span><span class="preprocessor">#else</span> 209 00255 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 210 00256 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 211 00257 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_MLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 212 00258 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_V_INST_MLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 213 00259 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 214 00260 <span class="preprocessor"></span> 215 00261 <span class="preprocessor">#if (PVLOGGER_INST_LEVEL > PVLOGMSG_INST_LLDBG)</span> 216 <a name="l00262"></a><a class="code" href="pvlogger_8h.html#a27">00262</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG(LOGGER, LEVEL, MESSAGE)</span> 217 <a name="l00263"></a><a class="code" href="pvlogger_8h.html#a28">00263</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGMSG_V(LOGGER, LEVEL, MESSAGE)</span> 218 <a name="l00264"></a><a class="code" href="pvlogger_8h.html#a29">00264</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN(LOGGER, LEVEL, MESSAGE)</span> 219 <a name="l00265"></a><a class="code" href="pvlogger_8h.html#a30">00265</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) _PVLOGGER_LOGBIN_V(LOGGER, LEVEL, MESSAGE)</span> 220 00266 <span class="preprocessor"></span><span class="preprocessor">#else</span> 221 00267 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 222 00268 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 223 00269 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 224 00270 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V_PVLOGMSG_INST_LLDBG(LOGGER, LEVEL, MESSAGE) OSCL_UNUSED_ARG(LOGGER);</span> 225 00271 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 226 00272 <span class="preprocessor"></span> 227 00273 228 <a name="l00288"></a><a class="code" href="pvlogger_8h.html#a31">00288</a> <span class="preprocessor">#define PVLOGGER_LOGMSG(IL, LOGGER, LEVEL, MESSAGE) PVLOGGER_LOGMSG_ ## IL (LOGGER, LEVEL, MESSAGE)</span> 229 <a name="l00289"></a><a class="code" href="pvlogger_8h.html#a32">00289</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGMSG_V(IL, LOGGER, LEVEL, MESSAGE) PVLOGGER_LOGMSG_V_ ## IL (LOGGER, LEVEL, MESSAGE)</span> 230 00290 <span class="preprocessor"></span> 231 <a name="l00310"></a><a class="code" href="pvlogger_8h.html#a33">00310</a> <span class="preprocessor">#define PVLOGGER_LOGBIN(IL, LOGGER, LEVEL, MESSAGE) PVLOGGER_LOGBIN_ ## IL (LOGGER, LEVEL, MESSAGE)</span> 232 <a name="l00311"></a><a class="code" href="pvlogger_8h.html#a34">00311</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_LOGBIN_V(IL, LOGGER, LEVEL, MESSAGE) PVLOGGER_LOGBIN_V_ ## IL (LOGGER, LEVEL, MESSAGE)</span> 233 00312 <span class="preprocessor"></span> 234 00313 <span class="preprocessor">#endif //PVLOGGER_INST_LEVEL_SUPPORT</span> 235 00314 <span class="preprocessor"></span> 236 <a name="l00323"></a><a class="code" href="pvlogger_8h.html#a35">00323</a> <span class="preprocessor">#define PVLOGGER_LOG_USE_ONLY(x) x</span> 237 00324 <span class="preprocessor"></span> 238 00325 <span class="preprocessor">#endif // PVLOGGER_INST_LEVEL</span> 239 00326 <span class="preprocessor"></span> 240 00331 <span class="preprocessor">#ifndef PVLOGGER_ENABLE</span> 241 00332 <span class="preprocessor"></span><span class="preprocessor">#if (PVLOGGER_INST_LEVEL<1)</span> 242 00333 <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_ENABLE 0</span> 243 00334 <span class="preprocessor"></span><span class="preprocessor">#else</span> 244 <a name="l00335"></a><a class="code" href="pvlogger_8h.html#a36">00335</a> <span class="preprocessor"></span><span class="preprocessor">#define PVLOGGER_ENABLE 1</span> 245 00336 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 246 00337 <span class="preprocessor"></span><span class="preprocessor">#endif</span> 247 00338 <span class="preprocessor"></span> 248 00350 <span class="keyword">class </span><a class="code" href="classPVLoggerAppender.html">PVLoggerAppender</a>; 249 00351 <span class="keyword">class </span><a class="code" href="classPVLoggerFilter.html">PVLoggerFilter</a>; 250 <a name="l00352"></a><a class="code" href="classPVLogger.html">00352</a> <span class="keyword">class </span><a class="code" href="classPVLogger.html">PVLogger</a> 251 00353 { 252 00354 <span class="keyword">public</span>: 253 00355 254 <a name="l00356"></a><a class="code" href="classPVLogger.html#s0">00356</a> <span class="keyword">typedef</span> int32 <a class="code" href="classPVLogger.html#s0">log_level_type</a>; 255 <a name="l00357"></a><a class="code" href="classPVLogger.html#s1">00357</a> <span class="keyword">typedef</span> int32 <a class="code" href="classPVLogger.html#s1">message_id_type</a>; 256 <a name="l00358"></a><a class="code" href="classPVLogger.html#s2">00358</a> <span class="keyword">typedef</span> int32 <a class="code" href="classPVLogger.html#s2">filter_status_type</a>; 257 <a name="l00359"></a><a class="code" href="classPVLogger.html#s3">00359</a> <span class="keyword">typedef</span> <a class="code" href="class__OsclBasicAllocator.html">_OsclBasicAllocator</a> <a class="code" href="class__OsclBasicAllocator.html">alloc_type</a>; 258 00360 259 00369 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#d0">Init</a>(); 260 00370 261 00371 262 00379 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#d1">Cleanup</a>(); 263 00380 264 00401 OSCL_IMPORT_REF <span class="keyword">static</span> <a class="code" href="classPVLogger.html">PVLogger</a> *<a class="code" href="classPVLogger.html#d2">GetLoggerObject</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* inputTag); 265 00402 266 <a name="l00410"></a><a class="code" href="classPVLogger.html#a0">00410</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a0">SetLogLevel</a>(<a class="code" href="classPVLogger.html#s0">log_level_type</a> level) 267 00411 { 268 00412 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 269 00413 <span class="preprocessor"></span> _level = level; 270 00414 <span class="preprocessor">#else</span> 271 00415 <span class="preprocessor"></span> <a class="code" href="group__osclbase.html#a89">OSCL_UNUSED_ARG</a>(level); 272 00416 <span class="preprocessor">#endif</span> 273 00417 <span class="preprocessor"></span> } 274 00418 275 00427 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a1">SetLogLevelAndPropagate</a>(<a class="code" href="classPVLogger.html#s0">log_level_type</a> level); 276 00428 277 <a name="l00436"></a><a class="code" href="classPVLogger.html#a2">00436</a> <a class="code" href="classPVLogger.html#s0">log_level_type</a> <a class="code" href="classPVLogger.html#a2">GetLogLevel</a>() 278 00437 { 279 00438 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 280 00439 <span class="preprocessor"></span> <span class="keywordflow">return</span>(_level); 281 00440 <span class="preprocessor">#else</span> 282 00441 <span class="preprocessor"></span> <span class="keywordflow">return</span> 0; 283 00442 <span class="preprocessor">#endif</span> 284 00443 <span class="preprocessor"></span> } 285 00444 286 <a name="l00449"></a><a class="code" href="classPVLogger.html#a3">00449</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a3">DisableAppenderInheritance</a>() 287 00450 { 288 00451 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 289 00452 <span class="preprocessor"></span> _oAppenderInheritance = <span class="keyword">false</span>; 290 00453 <span class="preprocessor">#endif</span> 291 00454 <span class="preprocessor"></span> } 292 00455 293 <a name="l00467"></a><a class="code" href="classPVLogger.html#a4">00467</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a4">AddAppender</a>(<a class="code" href="classOsclSharedPtr.html">OsclSharedPtr<PVLoggerAppender></a> &appender) 294 00468 { 295 00469 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 296 00470 <span class="preprocessor"></span> _pOwnAppenderVec.<a class="code" href="classOscl__Vector.html#a5">push_back</a>(appender); 297 00471 <span class="preprocessor">#else</span> 298 00472 <span class="preprocessor"></span> <a class="code" href="group__osclbase.html#a89">OSCL_UNUSED_ARG</a>(appender); 299 00473 <span class="preprocessor">#endif</span> 300 00474 <span class="preprocessor"></span> } 301 00475 302 <a name="l00485"></a><a class="code" href="classPVLogger.html#a5">00485</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a5">RemoveAppender</a>(<a class="code" href="classOsclSharedPtr.html">OsclSharedPtr<PVLoggerAppender></a> &appender) 303 00486 { 304 00487 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 305 00488 <span class="preprocessor"></span> <span class="keywordflow">for</span> (<a class="code" href="classOscl__Vector.html">Oscl_Vector<OsclSharedPtr<PVLoggerAppender></a>, alloc_type>::iterator it = _pOwnAppenderVec.<a class="code" href="classOscl__Vector.html#a17">begin</a>(); 306 00489 it != _pOwnAppenderVec.<a class="code" href="classOscl__Vector.html#a18">end</a>(); 307 00490 it++) 308 00491 { 309 00492 <span class="keywordflow">if</span> ((*it).GetRep() == appender.<a class="code" href="classOsclSharedPtr.html#a7">GetRep</a>()) 310 00493 { 311 00494 _pOwnAppenderVec.<a class="code" href="classOscl__Vector.html#a19">erase</a>(it); 312 00495 <span class="keywordflow">break</span>; 313 00496 } 314 00497 } 315 00498 <span class="preprocessor">#else</span> 316 00499 <span class="preprocessor"></span> <a class="code" href="group__osclbase.html#a89">OSCL_UNUSED_ARG</a>(appender); 317 00500 <span class="preprocessor">#endif</span> 318 00501 <span class="preprocessor"></span> } 319 00502 320 <a name="l00514"></a><a class="code" href="classPVLogger.html#a6">00514</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a6">AddFilter</a>(<a class="code" href="classOsclSharedPtr.html">OsclSharedPtr<PVLoggerFilter></a> &filter) 321 00515 { 322 00516 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 323 00517 <span class="preprocessor"></span> _pMsgFilterVec.<a class="code" href="classOscl__Vector.html#a5">push_back</a>(filter); 324 00518 <span class="preprocessor">#else</span> 325 00519 <span class="preprocessor"></span> <a class="code" href="group__osclbase.html#a89">OSCL_UNUSED_ARG</a>(filter); 326 00520 <span class="preprocessor">#endif</span> 327 00521 <span class="preprocessor"></span> }; 328 00522 329 <a name="l00526"></a><a class="code" href="classPVLogger.html#a7">00526</a> uint32 <a class="code" href="classPVLogger.html#a7">GetNumAppenders</a>() 330 00527 { 331 00528 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 332 00529 <span class="preprocessor"></span> <span class="keywordflow">return</span>(_pOwnAppenderVec.<a class="code" href="classOscl__Vector__Base.html#a0">size</a>()); 333 00530 <span class="preprocessor">#else</span> 334 00531 <span class="preprocessor"></span> <span class="keywordflow">return</span> 0; 335 00532 <span class="preprocessor">#endif</span> 336 00533 <span class="preprocessor"></span> } 337 00534 338 00546 OSCL_IMPORT_REF <span class="keywordtype">bool</span> <a class="code" href="classPVLogger.html#a8">IsActive</a>(<a class="code" href="classPVLogger.html#s0">log_level_type</a> level); 339 00547 340 00561 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a9">LogMsgStringV</a>(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, <span class="keyword">const</span> <span class="keywordtype">char</span> * fmt, va_list arguments); 341 00562 342 00576 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a10">LogMsgBuffersV</a>(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, int32 numPairs, va_list arguments); 343 00577 344 00591 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a11">LogMsgString</a>(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, <span class="keyword">const</span> <span class="keywordtype">char</span> * fmt, ...); 345 00592 346 00606 OSCL_IMPORT_REF <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#a12">LogMsgBuffers</a>(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, int32 numPairs, ...); 347 00607 348 00618 OSCL_IMPORT_REF <a class="code" href="classPVLogger.html#a13">PVLogger</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* inputTag, <a class="code" href="classPVLogger.html#s0">log_level_type</a> level, <span class="keywordtype">bool</span> oAppenderInheritance); 349 00619 350 <a name="l00620"></a><a class="code" href="classPVLogger.html#a14">00620</a> <span class="keyword">virtual</span> <a class="code" href="classPVLogger.html#a14">~PVLogger</a>() 351 00621 { 352 00622 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 353 00623 <span class="preprocessor"></span> _tagAllocator.<a class="code" href="classOscl__TAlloc.html#a5">deallocate</a>(_tag); 354 00624 <span class="preprocessor">#endif</span> 355 00625 <span class="preprocessor"></span> } 356 00626 357 00627 <span class="preprocessor">#if(PVLOGGER_ENABLE)</span> 358 00628 <span class="preprocessor"></span> <span class="keyword">protected</span>: 359 <a name="l00629"></a><a class="code" href="classPVLogger.html#l0">00629</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classPVLoggerRegistry.html">PVLoggerRegistry</a>; 360 <a name="l00630"></a><a class="code" href="classPVLogger.html#b0">00630</a> <span class="keywordtype">void</span> <a class="code" href="classPVLogger.html#b0">SetParent</a>(<a class="code" href="classPVLogger.html">PVLogger</a> *parentLogger) 361 00631 { 362 00632 _parentLogger = parentLogger; 363 00633 } 364 <a name="l00634"></a><a class="code" href="classPVLogger.html#b1">00634</a> <a class="code" href="classPVLogger.html">PVLogger</a> *<a class="code" href="classPVLogger.html#b1">GetParent</a>() 365 00635 { 366 00636 <span class="keywordflow">return</span>(_parentLogger); 367 00637 } 368 00638 369 00639 <span class="keyword">private</span>: 370 00640 <a class="code" href="classPVLogger.html#s2">filter_status_type</a> FilterMsg(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID); 371 00641 <span class="keywordtype">void</span> LogMsg(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list arguments); 372 00642 <span class="keywordtype">void</span> LogMsg(<a class="code" href="classPVLogger.html#s1">message_id_type</a> msgID, int32 numPairs, va_list arguments); 373 00643 374 00644 <span class="keywordtype">char</span>* _tag; 375 00645 <a class="code" href="classPVLogger.html#s0">log_level_type</a> _level; 376 00646 <a class="code" href="classPVLogger.html#s0">log_level_type</a> _lastMsgLevel; 377 00647 <span class="keywordtype">bool</span> _oAppenderInheritance; 378 00648 379 00649 <a class="code" href="classPVLogger.html">PVLogger</a> *_parentLogger; 380 00650 <a class="code" href="classOscl__TAlloc.html">Oscl_TAlloc<char, alloc_type></a> _tagAllocator; 381 00651 382 00652 <a class="code" href="classOscl__Vector.html">Oscl_Vector<OsclSharedPtr<PVLoggerFilter></a>, alloc_type> _pMsgFilterVec; 383 00653 <a class="code" href="classOscl__Vector.html">Oscl_Vector<OsclSharedPtr<PVLoggerAppender></a>, alloc_type> _pOwnAppenderVec; 384 00654 <span class="preprocessor">#endif //PVLOGGER_ENABLE</span> 385 00655 <span class="preprocessor"></span>}; 386 00656 387 00658 <span class="comment">// log message levels</span> 388 00660 <span class="comment"></span> 389 <a name="l00664"></a><a class="code" href="pvlogger_8h.html#a38">00664</a> <span class="comment"></span><span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a38">PVLOGMSG_EMERG</a> = 0; 390 <a name="l00668"></a><a class="code" href="pvlogger_8h.html#a39">00668</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a39">PVLOGMSG_ALERT</a> = 1; 391 <a name="l00672"></a><a class="code" href="pvlogger_8h.html#a40">00672</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a40">PVLOGMSG_CRIT</a> = 2; 392 <a name="l00676"></a><a class="code" href="pvlogger_8h.html#a41">00676</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a41">PVLOGMSG_ERR</a> = 3; 393 <a name="l00680"></a><a class="code" href="pvlogger_8h.html#a42">00680</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a42">PVLOGMSG_WARNING</a> = 4; 394 <a name="l00684"></a><a class="code" href="pvlogger_8h.html#a43">00684</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a43">PVLOGMSG_NOTICE</a> = 5; 395 <a name="l00688"></a><a class="code" href="pvlogger_8h.html#a44">00688</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a44">PVLOGMSG_INFO</a> = 6; 396 <a name="l00692"></a><a class="code" href="pvlogger_8h.html#a45">00692</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a45">PVLOGMSG_STACK_TRACE</a> = 7; 397 <a name="l00696"></a><a class="code" href="pvlogger_8h.html#a46">00696</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a46">PVLOGMSG_DEBUG</a> = 8; 398 00697 399 00699 <span class="comment">// do not use these levels</span> 400 00700 <span class="comment">// for backward compatibility only</span> 401 <a name="l00702"></a><a class="code" href="pvlogger_8h.html#a47">00702</a> <span class="comment">const PVLogger::log_level_type PVLOGMSG_FATAL_ERROR = PVLOGMSG_EMERG;</span> 402 <a name="l00703"></a><a class="code" href="pvlogger_8h.html#a48">00703</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a48">PVLOGMSG_NONFATAL_ERROR</a> = <a class="code" href="pvlogger_8h.html#a41">PVLOGMSG_ERR</a>; 403 <a name="l00704"></a><a class="code" href="pvlogger_8h.html#a49">00704</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a49">PVLOGMSG_STATISTIC</a> = <a class="code" href="pvlogger_8h.html#a44">PVLOGMSG_INFO</a>; 404 <a name="l00705"></a><a class="code" href="pvlogger_8h.html#a50">00705</a> <span class="keyword">const</span> <a class="code" href="classPVLogger.html#s0">PVLogger::log_level_type</a> <a class="code" href="pvlogger_8h.html#a50">PVLOGMSG_VERBOSE</a> = <a class="code" href="pvlogger_8h.html#a46">PVLOGMSG_DEBUG</a>; 405 00706 406 00707 <span class="preprocessor">#endif // PVLOGGER_H_INCLUDED</span> 407 </pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 408 <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 409 </small></address> 410 </body> 411 </html> 412