blob: 2bc3518e39ae7d32d9feb31d51e7812f842b6b23 [file] [log] [blame]
<!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>PVLoggerRegistry class Reference</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="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>
<hr><h1>PVLoggerRegistry Class Reference</h1><code>#include &lt;<a class="el" href="pvlogger__registry_8h-source.html">pvlogger_registry.h</a>&gt;</code>
<p>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
<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>
<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>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<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>
<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>
<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>
<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>
<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>
<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>
<tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr>
<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>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Class: PVLoggerRegistry
<p>
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.
<p>
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.
<p>
<hr><h2>Member Typedef Documentation</h2>
<a name="s1" doxytag="PVLoggerRegistry::alloc_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef PVLogger::alloc_type PVLoggerRegistry::alloc_type
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<a name="s0" doxytag="PVLoggerRegistry::log_level_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> typedef PVLogger::log_level_type PVLoggerRegistry::log_level_type
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="PVLoggerRegistry::PVLoggerRegistry"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF PVLoggerRegistry::PVLoggerRegistry </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap>&nbsp; </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
PVLoggerRegistry Constructor </td>
</tr>
</table>
<a name="a1" doxytag="PVLoggerRegistry::~PVLoggerRegistry"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> virtual OSCL_IMPORT_REF PVLoggerRegistry::~PVLoggerRegistry </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap>&nbsp; </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap><code> [virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
PVLoggerRegistry Destructor </td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a3" doxytag="PVLoggerRegistry::CreatePVLogger"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a>* PVLoggerRegistry::CreatePVLogger </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>tagIn</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>level</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>bool&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>oAppenderInheritance</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
This method creates a log control point, with specified tag, and level<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>inputTag</em>&nbsp;</td><td>
logger tag, viz. "x.y.z" </td></tr>
<tr><td valign=top><em>level</em>&nbsp;</td><td>
log level associated with the logging control point</td></tr>
<tr><td valign=top><em>oAppenderInheritance</em>&nbsp;</td><td>
</td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
<a class="el" href="classPVLogger.html">PVLogger</a>&lt;alloc_type, TheLock&gt;* Pointer to the logging control point </dl> </td>
</tr>
</table>
<a name="a2" doxytag="PVLoggerRegistry::GetPVLoggerObject"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF <a class="el" href="classPVLogger.html">PVLogger</a>* PVLoggerRegistry::GetPVLoggerObject </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const char *&nbsp;</td>
<td class="mdname1" valign="top" nowrap>&nbsp; <em>tagIn</em> </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
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>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>inputTag</em>&nbsp;</td><td>
logger tag, viz. "x.y.z" </td></tr>
<tr><td valign=top><em>level</em>&nbsp;</td><td>
log level associated with the logging control point</td></tr>
<tr><td valign=top><em>oAppenderInheritance</em>&nbsp;</td><td>
</td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
<a class="el" href="classPVLogger.html">PVLogger</a>&lt;Alloc, TheLock&gt;* Pointer to the logging control point </dl> </td>
</tr>
</table>
<a name="d0" doxytag="PVLoggerRegistry::GetPVLoggerRegistry"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF PVLoggerRegistry* PVLoggerRegistry::GetPVLoggerRegistry </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap>&nbsp; </td>
<td class="md" valign="top">)&nbsp;</td>
<td class="md" nowrap><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get the logger registry. There is only one logger registry instance per thread. </td>
</tr>
</table>
<a name="a5" doxytag="PVLoggerRegistry::SetNodeLogLevelExplicit"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF void PVLoggerRegistry::SetNodeLogLevelExplicit </td>
<td class="md" valign="top">(&nbsp;</td>
<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>
<td class="mdname" nowrap>&nbsp; <em>node</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>level</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
This method recursively propagates the log level to all the descendents, of a node.<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>node</em>&nbsp;</td><td>
Node ptr, associated with a logger, from the tag tree. </td></tr>
<tr><td valign=top><em>level</em>&nbsp;</td><td>
log level associated with the logging control point</td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
NONE </dl> </td>
</tr>
</table>
<a name="a4" doxytag="PVLoggerRegistry::SetNodeLogLevelExplicit"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> OSCL_IMPORT_REF bool PVLoggerRegistry::SetNodeLogLevelExplicit </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">char *&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>tagIn</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap><a class="el" href="classPVLoggerRegistry.html#s0">log_level_type</a>&nbsp;</td>
<td class="mdname" nowrap>&nbsp; <em>level</em></td>
</tr>
<tr>
<td></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
&nbsp;
</td>
<td>
<p>
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>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>tagIn</em>&nbsp;</td><td>
logger tag, viz. "x.y.z" </td></tr>
<tr><td valign=top><em>level</em>&nbsp;</td><td>
log level associated with the logging control point</td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
true on success, else false. </dl> </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="pvlogger__registry_8h-source.html">pvlogger_registry.h</a></ul>
<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
</small></address>
</body>
</html>