Home | History | Annotate | Download | only in oscl_html
      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>PVLoggerRegistry class Reference</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> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; </center>
      9 <hr><h1>PVLoggerRegistry Class Reference</h1><code>#include &lt;<a class="el" href="pvlogger__registry_8h-source.html">pvlogger_registry.h</a>&gt;</code>
     10 <p>
     11 <table border=0 cellpadding=0 cellspacing=0>
     12 <tr><td></td></tr>
     13 <tr><td colspan=2><br><h2>Public Types</h2></td></tr>
     14 <tr><td nowrap align=right valign=top>typedef PVLogger::log_level_type&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a></td></tr>
     15 <tr><td nowrap align=right valign=top>typedef PVLogger::alloc_type&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#s1">alloc_type</a></td></tr>
     16 <tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
     17 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a0">PVLoggerRegistry</a> ()</td></tr>
     18 <tr><td nowrap align=right valign=top>virtual OSCL_IMPORT_REF&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a1">~PVLoggerRegistry</a> ()</td></tr>
     19 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a> *&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a2">GetPVLoggerObject</a> (const char *tagIn)</td></tr>
     20 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a> *&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a3">CreatePVLogger</a> (const char *tagIn, <a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a> level, bool oAppenderInheritance)</td></tr>
     21 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF bool&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a4">SetNodeLogLevelExplicit</a> (char *tagIn, <a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a> level)</td></tr>
     22 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF void&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#a5">SetNodeLogLevelExplicit</a> (<a class="el" href="classOscl__TagTree.html">Oscl_TagTree</a>&lt; <a class="el" href="classPVLogger.html">PVLogger</a> *, <a class="el" href="classPVLoggerRegistry.html#s1">alloc_type</a> &gt;::node_type *node, <a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a> level)</td></tr>
     23 <tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr>
     24 <tr><td nowrap align=right valign=top>OSCL_IMPORT_REF PVLoggerRegistry *&nbsp;</td><td valign=bottom><a class="el" href="classPVLoggerRegistry.html#d0">GetPVLoggerRegistry</a> ()</td></tr>
     25 </table>
     26 <hr><a name="_details"></a><h2>Detailed Description</h2>
     27 Class: PVLoggerRegistry
     28 <p>
     29 PVLoggerRegistry class, maintains a repository of all the loggers, along with their associated tags, in a tag tree. Any request for a log control point is serviced by this class.
     30 <p>
     31 Memory Ownership: Creates log control points for each tag, and holds these pointers in the tag tree. <a class="el" href="classPVLogger.html">PVLogger</a> registry is responsible for calling the destructor on each of these loggers. 
     32 <p>
     33 <hr><h2>Member Typedef Documentation</h2>
     34 <a name="s1" doxytag="PVLoggerRegistry::alloc_type"></a><p>
     35 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     36   <tr>
     37     <td class="md">
     38       <table cellpadding="0" cellspacing="0" border="0">
     39         <tr>
     40           <td class="md" nowrap valign="top"> typedef PVLogger::alloc_type PVLoggerRegistry::alloc_type
     41       </table>
     42     </td>
     43   </tr>
     44 </table>
     45 <table cellspacing=5 cellpadding=0 border=0>
     46   <tr>
     47     <td>
     48       &nbsp;
     49     </td>
     50     <td>
     51 
     52 <p>
     53     </td>
     54   </tr>
     55 </table>
     56 <a name="s0" doxytag="PVLoggerRegistry::log_level_type"></a><p>
     57 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     58   <tr>
     59     <td class="md">
     60       <table cellpadding="0" cellspacing="0" border="0">
     61         <tr>
     62           <td class="md" nowrap valign="top"> typedef PVLogger::log_level_type PVLoggerRegistry::log_level_type
     63       </table>
     64     </td>
     65   </tr>
     66 </table>
     67 <table cellspacing=5 cellpadding=0 border=0>
     68   <tr>
     69     <td>
     70       &nbsp;
     71     </td>
     72     <td>
     73 
     74 <p>
     75     </td>
     76   </tr>
     77 </table>
     78 <hr><h2>Constructor &amp; Destructor Documentation</h2>
     79 <a name="a0" doxytag="PVLoggerRegistry::PVLoggerRegistry"></a><p>
     80 <table width="100%" cellpadding="2" cellspacing="0" border="0">
     81   <tr>
     82     <td class="md">
     83       <table cellpadding="0" cellspacing="0" border="0">
     84         <tr>
     85           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF PVLoggerRegistry::PVLoggerRegistry </td>
     86           <td class="md" valign="top">(&nbsp;</td>
     87           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
     88           <td class="md" valign="top">)&nbsp;</td>
     89           <td class="md" nowrap></td>
     90         </tr>
     91 
     92       </table>
     93     </td>
     94   </tr>
     95 </table>
     96 <table cellspacing=5 cellpadding=0 border=0>
     97   <tr>
     98     <td>
     99       &nbsp;
    100     </td>
    101     <td>
    102 
    103 <p>
    104 PVLoggerRegistry Constructor     </td>
    105   </tr>
    106 </table>
    107 <a name="a1" doxytag="PVLoggerRegistry::~PVLoggerRegistry"></a><p>
    108 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    109   <tr>
    110     <td class="md">
    111       <table cellpadding="0" cellspacing="0" border="0">
    112         <tr>
    113           <td class="md" nowrap valign="top"> virtual OSCL_IMPORT_REF PVLoggerRegistry::~PVLoggerRegistry </td>
    114           <td class="md" valign="top">(&nbsp;</td>
    115           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    116           <td class="md" valign="top">)&nbsp;</td>
    117           <td class="md" nowrap><code> [virtual]</code></td>
    118         </tr>
    119 
    120       </table>
    121     </td>
    122   </tr>
    123 </table>
    124 <table cellspacing=5 cellpadding=0 border=0>
    125   <tr>
    126     <td>
    127       &nbsp;
    128     </td>
    129     <td>
    130 
    131 <p>
    132 PVLoggerRegistry Destructor     </td>
    133   </tr>
    134 </table>
    135 <hr><h2>Member Function Documentation</h2>
    136 <a name="a3" doxytag="PVLoggerRegistry::CreatePVLogger"></a><p>
    137 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    138   <tr>
    139     <td class="md">
    140       <table cellpadding="0" cellspacing="0" border="0">
    141         <tr>
    142           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a>* PVLoggerRegistry::CreatePVLogger </td>
    143           <td class="md" valign="top">(&nbsp;</td>
    144           <td class="md" nowrap valign="top">const char *&nbsp;</td>
    145           <td class="mdname" nowrap>&nbsp; <em>tagIn</em>, </td>
    146         </tr>
    147         <tr>
    148           <td></td>
    149           <td></td>
    150           <td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
    151           <td class="mdname" nowrap>&nbsp; <em>level</em>, </td>
    152         </tr>
    153         <tr>
    154           <td></td>
    155           <td></td>
    156           <td class="md" nowrap>bool&nbsp;</td>
    157           <td class="mdname" nowrap>&nbsp; <em>oAppenderInheritance</em></td>
    158         </tr>
    159         <tr>
    160           <td></td>
    161           <td class="md">)&nbsp;</td>
    162           <td class="md" colspan="2"></td>
    163         </tr>
    164 
    165       </table>
    166     </td>
    167   </tr>
    168 </table>
    169 <table cellspacing=5 cellpadding=0 border=0>
    170   <tr>
    171     <td>
    172       &nbsp;
    173     </td>
    174     <td>
    175 
    176 <p>
    177 This method creates a log control point, with specified tag, and level<dl compact><dt><b>Parameters: </b></dt><dd>
    178 <table border=0 cellspacing=2 cellpadding=0>
    179 <tr><td valign=top><em>inputTag</em>&nbsp;</td><td>
    180 logger tag, viz. "x.y.z" </td></tr>
    181 <tr><td valign=top><em>level</em>&nbsp;</td><td>
    182 log level associated with the logging control point</td></tr>
    183 <tr><td valign=top><em>oAppenderInheritance</em>&nbsp;</td><td>
    184 </td></tr>
    185 </table>
    186 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    187 <a class="el" href="classPVLogger.html">PVLogger</a>&lt;alloc_type, TheLock&gt;* Pointer to the logging control point </dl>    </td>
    188   </tr>
    189 </table>
    190 <a name="a2" doxytag="PVLoggerRegistry::GetPVLoggerObject"></a><p>
    191 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    192   <tr>
    193     <td class="md">
    194       <table cellpadding="0" cellspacing="0" border="0">
    195         <tr>
    196           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a>* PVLoggerRegistry::GetPVLoggerObject </td>
    197           <td class="md" valign="top">(&nbsp;</td>
    198           <td class="md" nowrap valign="top">const char *&nbsp;</td>
    199           <td class="mdname1" valign="top" nowrap>&nbsp; <em>tagIn</em>          </td>
    200           <td class="md" valign="top">)&nbsp;</td>
    201           <td class="md" nowrap></td>
    202         </tr>
    203 
    204       </table>
    205     </td>
    206   </tr>
    207 </table>
    208 <table cellspacing=5 cellpadding=0 border=0>
    209   <tr>
    210     <td>
    211       &nbsp;
    212     </td>
    213     <td>
    214 
    215 <p>
    216 PVLoggerRegistry method to get access to a logging control point, associated with a tag. In case the logger for this tag does not exist, it is created afresh, else pointer to the existing one is returned.<dl compact><dt><b>Parameters: </b></dt><dd>
    217 <table border=0 cellspacing=2 cellpadding=0>
    218 <tr><td valign=top><em>inputTag</em>&nbsp;</td><td>
    219 logger tag, viz. "x.y.z" </td></tr>
    220 <tr><td valign=top><em>level</em>&nbsp;</td><td>
    221 log level associated with the logging control point</td></tr>
    222 <tr><td valign=top><em>oAppenderInheritance</em>&nbsp;</td><td>
    223 </td></tr>
    224 </table>
    225 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    226 <a class="el" href="classPVLogger.html">PVLogger</a>&lt;Alloc, TheLock&gt;* Pointer to the logging control point </dl>    </td>
    227   </tr>
    228 </table>
    229 <a name="d0" doxytag="PVLoggerRegistry::GetPVLoggerRegistry"></a><p>
    230 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    231   <tr>
    232     <td class="md">
    233       <table cellpadding="0" cellspacing="0" border="0">
    234         <tr>
    235           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF PVLoggerRegistry* PVLoggerRegistry::GetPVLoggerRegistry </td>
    236           <td class="md" valign="top">(&nbsp;</td>
    237           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
    238           <td class="md" valign="top">)&nbsp;</td>
    239           <td class="md" nowrap><code> [static]</code></td>
    240         </tr>
    241 
    242       </table>
    243     </td>
    244   </tr>
    245 </table>
    246 <table cellspacing=5 cellpadding=0 border=0>
    247   <tr>
    248     <td>
    249       &nbsp;
    250     </td>
    251     <td>
    252 
    253 <p>
    254 Get the logger registry. There is only one logger registry instance per thread.     </td>
    255   </tr>
    256 </table>
    257 <a name="a5" doxytag="PVLoggerRegistry::SetNodeLogLevelExplicit"></a><p>
    258 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    259   <tr>
    260     <td class="md">
    261       <table cellpadding="0" cellspacing="0" border="0">
    262         <tr>
    263           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF void PVLoggerRegistry::SetNodeLogLevelExplicit </td>
    264           <td class="md" valign="top">(&nbsp;</td>
    265           <td class="md" nowrap valign="top"><a class="el" href="classOscl__TagTree.html">Oscl_TagTree</a>&lt; <a class="el" href="classPVLogger.html">PVLogger</a> *, <a class="el" href="classPVLoggerRegistry.html#s1">alloc_type</a> &gt;::node_type *&nbsp;</td>
    266           <td class="mdname" nowrap>&nbsp; <em>node</em>, </td>
    267         </tr>
    268         <tr>
    269           <td></td>
    270           <td></td>
    271           <td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
    272           <td class="mdname" nowrap>&nbsp; <em>level</em></td>
    273         </tr>
    274         <tr>
    275           <td></td>
    276           <td class="md">)&nbsp;</td>
    277           <td class="md" colspan="2"></td>
    278         </tr>
    279 
    280       </table>
    281     </td>
    282   </tr>
    283 </table>
    284 <table cellspacing=5 cellpadding=0 border=0>
    285   <tr>
    286     <td>
    287       &nbsp;
    288     </td>
    289     <td>
    290 
    291 <p>
    292 This method recursively propagates the log level to all the descendents, of a node.<dl compact><dt><b>Parameters: </b></dt><dd>
    293 <table border=0 cellspacing=2 cellpadding=0>
    294 <tr><td valign=top><em>node</em>&nbsp;</td><td>
    295 Node ptr, associated with a logger, from the tag tree. </td></tr>
    296 <tr><td valign=top><em>level</em>&nbsp;</td><td>
    297 log level associated with the logging control point</td></tr>
    298 </table>
    299 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    300 NONE </dl>    </td>
    301   </tr>
    302 </table>
    303 <a name="a4" doxytag="PVLoggerRegistry::SetNodeLogLevelExplicit"></a><p>
    304 <table width="100%" cellpadding="2" cellspacing="0" border="0">
    305   <tr>
    306     <td class="md">
    307       <table cellpadding="0" cellspacing="0" border="0">
    308         <tr>
    309           <td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool PVLoggerRegistry::SetNodeLogLevelExplicit </td>
    310           <td class="md" valign="top">(&nbsp;</td>
    311           <td class="md" nowrap valign="top">char *&nbsp;</td>
    312           <td class="mdname" nowrap>&nbsp; <em>tagIn</em>, </td>
    313         </tr>
    314         <tr>
    315           <td></td>
    316           <td></td>
    317           <td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
    318           <td class="mdname" nowrap>&nbsp; <em>level</em></td>
    319         </tr>
    320         <tr>
    321           <td></td>
    322           <td class="md">)&nbsp;</td>
    323           <td class="md" colspan="2"></td>
    324         </tr>
    325 
    326       </table>
    327     </td>
    328   </tr>
    329 </table>
    330 <table cellspacing=5 cellpadding=0 border=0>
    331   <tr>
    332     <td>
    333       &nbsp;
    334     </td>
    335     <td>
    336 
    337 <p>
    338 This method propagates the log level to all the descendents of the node, with a specified tag.<dl compact><dt><b>Parameters: </b></dt><dd>
    339 <table border=0 cellspacing=2 cellpadding=0>
    340 <tr><td valign=top><em>tagIn</em>&nbsp;</td><td>
    341 logger tag, viz. "x.y.z" </td></tr>
    342 <tr><td valign=top><em>level</em>&nbsp;</td><td>
    343 log level associated with the logging control point</td></tr>
    344 </table>
    345 </dl><dl compact><dt><b>Returns: </b></dt><dd>
    346 true on success, else false. </dl>    </td>
    347   </tr>
    348 </table>
    349 <hr>The documentation for this class was generated from the following file:<ul>
    350 <li><a class="el" href="pvlogger__registry_8h-source.html">pvlogger_registry.h</a></ul>
    351 <hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
    352 <address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
    353 </small></address>
    354 </body>
    355 </html>
    356