<html dir="LTR">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
    <title>LogImpl Properties</title>
    <xml>
    </xml>
    <link rel="stylesheet" type="text/css" href="MSDN.css" />
  </head>
  <body id="bodyID" class="dtBODY">
    <div id="nsbanner">
      <div id="bannerrow1">
        <table class="bannerparthead" cellspacing="0">
          <tr id="hdr">
            <td class="runninghead">Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0</td>
            <td class="product">
            </td>
          </tr>
        </table>
      </div>
      <div id="TitleRow">
        <h1 class="dtH1">LogImpl�Properties</h1>
      </div>
    </div>
    <div id="nstext">
      <p>The properties of the <b>LogImpl</b> class are listed below. For a complete list of <b>LogImpl</b> class members, see the <a href="log4net.Core.LogImplMembers.html">LogImpl Members</a> topic.</p>
      <h4 class="dtH4">Public Instance Properties</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LogImpl.IsDebugEnabled.html">IsDebugEnabled</a></td><td width="50%"> Checks if this logger is enabled for the <code>DEBUG</code> level. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LogImpl.IsErrorEnabled.html">IsErrorEnabled</a></td><td width="50%"> Checks if this logger is enabled for the <code>ERROR</code> level. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LogImpl.IsFatalEnabled.html">IsFatalEnabled</a></td><td width="50%"> Checks if this logger is enabled for the <code>FATAL</code> level. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LogImpl.IsInfoEnabled.html">IsInfoEnabled</a></td><td width="50%"> Checks if this logger is enabled for the <code>INFO</code> level. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LogImpl.IsWarnEnabled.html">IsWarnEnabled</a></td><td width="50%"> Checks if this logger is enabled for the <code>WARN</code> level. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Core.LoggerWrapperImpl.Logger.html">Logger</a> (inherited from <b>LoggerWrapperImpl</b>)</td><td width="50%"> Gets the implementation behind this wrapper object. </td></tr></table>
      </div>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Core.LogImpl.html">LogImpl Class</a> | <a href="log4net.Core.html">log4net.Core Namespace</a></p>
      <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;">
        <param name="Keyword" value="LogImpl class, properties">
        </param>
      </object>
      <hr />
      <div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2011 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div>
    </div>
  </body>
</html>
