<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Apache log4cxx: Class Members</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname"><a href="http://logging.apache.org/log4cxx">Apache log4cxx</a>
   &#160;<span id="projectnumber">Version 0.10.0</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li class="current"><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="navrow3" class="tabs2">
    <ul class="tablist">
      <li class="current"><a href="functions.html"><span>All</span></a></li>
      <li><a href="functions_func.html"><span>Functions</span></a></li>
      <li><a href="functions_vars.html"><span>Variables</span></a></li>
      <li><a href="functions_type.html"><span>Typedefs</span></a></li>
      <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
      <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
      <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
    </ul>
  </div>
  <div id="navrow4" class="tabs3">
    <ul class="tablist">
      <li><a href="functions.html#index_a"><span>a</span></a></li>
      <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
      <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
      <li class="current"><a href="functions_0x64.html#index_d"><span>d</span></a></li>
      <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
      <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
      <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
      <li><a href="functions_0x68.html#index_h"><span>h</span></a></li>
      <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
      <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
      <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
      <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
      <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
      <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li>
      <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
      <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
      <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
      <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
      <li><a href="functions_0x75.html#index_u"><span>u</span></a></li>
      <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
      <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
      <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
      <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
      <li><a href="functions_0x7e.html#index_0x7e"><span>~</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('functions_0x64.html','');
</script>
<div id="doc-content">
<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>

<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
<li>DailyRollingFileAppender()
: <a class="el" href="classlog4cxx_1_1_daily_rolling_file_appender.html#ad07e32d489f3a68035f22bb71432663c">DailyRollingFileAppender</a>
</li>
<li>data()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_byte_buffer.html#a4b4ab281aadd31f29f7aba1f2796aaa5">ByteBuffer</a>
</li>
<li>databasePassword
: <a class="el" href="classlog4cxx_1_1db_1_1_o_d_b_c_appender.html#a6942ecd25e0671fa6e7346d84888eab6">ODBCAppender</a>
</li>
<li>databaseURL
: <a class="el" href="classlog4cxx_1_1db_1_1_o_d_b_c_appender.html#a4ec73418fef52ea00dc3b94f682cf525">ODBCAppender</a>
</li>
<li>databaseUser
: <a class="el" href="classlog4cxx_1_1db_1_1_o_d_b_c_appender.html#abb1c412066a897d15480261a944e7b5c">ODBCAppender</a>
</li>
<li>DatagramPacket()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_datagram_packet.html#a3d9e658cbc7b81df148c87fcd4091a46">DatagramPacket</a>
</li>
<li>DatagramSocket()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_datagram_socket.html#a9674f42acc9ca978657e16c7705ad512">DatagramSocket</a>
</li>
<li>Date()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_date.html#a1d1d13c9d2358558e6e2beaa38a1015a">Date</a>
</li>
<li>dateFormat
: <a class="el" href="classlog4cxx_1_1helpers_1_1_date_layout.html#a0595fba33539dd3c1f27efd9f8ffe5e6">DateLayout</a>
</li>
<li>DateFormat()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_date_format.html#a4ed3a759825dfb2e3acacc178dd13416">DateFormat</a>
</li>
<li>DateLayout()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_date_layout.html#a4980f1622f115668d84760966d0280dc">DateLayout</a>
</li>
<li>DateTimeDateFormat()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_date_time_date_format.html#aa400b2f46dd1ef6509afb778a63ec7f6">DateTimeDateFormat</a>
</li>
<li>debug()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_log_log.html#a30676ec46ce71fa7d574d82df61774ec">LogLog</a>
, <a class="el" href="classlog4cxx_1_1_logger.html#a6ae65af4e49a6a2a2468229acd3ca999">Logger</a>
</li>
<li>DEBUG_INT
: <a class="el" href="classlog4cxx_1_1_level.html#a385c44f6fb256e5716a2302a5b940388aff9f211cb40c69983adc0ed1215d19de">Level</a>
</li>
<li>decide()
: <a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html#af0945cde84b8648b7497a6140e91ac5c">AndFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_deny_all_filter.html#acfc21839a1c2ec66d23e530636c17fca">DenyAllFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_expression_filter.html#af0945cde84b8648b7497a6140e91ac5c">ExpressionFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_level_match_filter.html#af0945cde84b8648b7497a6140e91ac5c">LevelMatchFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_level_range_filter.html#af0945cde84b8648b7497a6140e91ac5c">LevelRangeFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_location_info_filter.html#af0945cde84b8648b7497a6140e91ac5c">LocationInfoFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_map_filter.html#af0945cde84b8648b7497a6140e91ac5c">MapFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_property_filter.html#af0945cde84b8648b7497a6140e91ac5c">PropertyFilter</a>
, <a class="el" href="classlog4cxx_1_1filter_1_1_string_match_filter.html#af0945cde84b8648b7497a6140e91ac5c">StringMatchFilter</a>
, <a class="el" href="classlog4cxx_1_1spi_1_1_filter.html#a88283dec47599dde698374489126f01c">Filter</a>
</li>
<li>decode()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_transcoder.html#a0f783e7f6ea99928d5fb475f049077cb">Transcoder</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_charset_decoder.html#a284406bd29c41967c1d07411617187f0">CharsetDecoder</a>
, <a class="el" href="classlog4cxx_1_1helpers_1_1_transcoder.html#a940f304d8a18f9016279466a67e452a7">Transcoder</a>
</li>
<li>decodeUTF8()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_transcoder.html#a7266540e7547ef4cabdcc536238a9d36">Transcoder</a>
</li>
<li>DEFAULT_DELAY
: <a class="el" href="classlog4cxx_1_1helpers_1_1_file_watchdog.html#a339ae144d23b36d09a21da4767206ea3">FileWatchdog</a>
</li>
<li>DEFAULT_PORT
: <a class="el" href="classlog4cxx_1_1net_1_1_socket_appender.html#a99b0a86e5516b7e6714faaf444cfd2be">SocketAppender</a>
, <a class="el" href="classlog4cxx_1_1net_1_1_x_m_l_socket_appender.html#a99b0a86e5516b7e6714faaf444cfd2be">XMLSocketAppender</a>
</li>
<li>DEFAULT_RECONNECTION_DELAY
: <a class="el" href="classlog4cxx_1_1net_1_1_socket_appender.html#ad40c219e214e2824f320cf7f532ce735">SocketAppender</a>
, <a class="el" href="classlog4cxx_1_1net_1_1_x_m_l_socket_appender.html#ad40c219e214e2824f320cf7f532ce735">XMLSocketAppender</a>
</li>
<li>DefaultLoggerFactory
: <a class="el" href="classlog4cxx_1_1_logger.html#aa5b36e994d86eb1c2c1015758a0b1a06">Logger</a>
</li>
<li>DefaultRepositorySelector()
: <a class="el" href="classlog4cxx_1_1spi_1_1_default_repository_selector.html#a06f6a051ea4455e441cf2b9f4d462798">DefaultRepositorySelector</a>
</li>
<li>delay
: <a class="el" href="classlog4cxx_1_1helpers_1_1_file_watchdog.html#a3465e71050ee8220d3f57ba66c03e435">FileWatchdog</a>
</li>
<li>deleteFile()
: <a class="el" href="classlog4cxx_1_1_file.html#a5a998ca667897c8986063952f7251694">File</a>
</li>
<li>delim
: <a class="el" href="classlog4cxx_1_1helpers_1_1_string_tokenizer.html#a2e786be5ac8d311dd413b633e84d92a1">StringTokenizer</a>
</li>
<li>DENY
: <a class="el" href="classlog4cxx_1_1spi_1_1_filter.html#a8c8b0cee5b13b164894f9eedd8d78bcda692e4d49cf7d68c58e78875ae1833fc3">Filter</a>
</li>
<li>DenyAllFilter()
: <a class="el" href="classlog4cxx_1_1filter_1_1_deny_all_filter.html#ad41b6b2d129c6fe21d6fdf5e04c81400">DenyAllFilter</a>
</li>
<li>DiagnosticContext
: <a class="el" href="classlog4cxx_1_1_n_d_c.html#a06fd35d312837c220d1781b630646621">NDC</a>
</li>
<li>doAppend()
: <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#a2df87e9db87ebe5396ea94fb9c25c488">AppenderSkeleton</a>
, <a class="el" href="classlog4cxx_1_1_appender.html#ae78c4f3ccf2a3b33eb83d76e49e79dc6">Appender</a>
</li>
<li>doConfigure()
: <a class="el" href="classlog4cxx_1_1_property_configurator.html#ab561ed5fe9e6be0742817cc261f5a5d9">PropertyConfigurator</a>
, <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#ab10fff6ec1e4c8c47ec6f494dada8332">DOMConfigurator</a>
, <a class="el" href="classlog4cxx_1_1spi_1_1_configurator.html#a5a874aab51a05508fda2cd7ae8e46465">Configurator</a>
, <a class="el" href="classlog4cxx_1_1_property_configurator.html#ad2a603ef30c78d771335bf3c83f39a6d">PropertyConfigurator</a>
</li>
<li>DOCUMENT_NODE
: <a class="el" href="classlog4cxx_1_1helpers_1_1_x_m_l_d_o_m_node.html#a9f3675e57eb3f0030d0eb22746c1a89faa170f5bd4256511bbbcb5d7946e5637d">XMLDOMNode</a>
</li>
<li>DOMConfigurator()
: <a class="el" href="classlog4cxx_1_1xml_1_1_d_o_m_configurator.html#a4179b39cabea8954856b4fe397174eba">DOMConfigurator</a>
</li>
<li>DOMException()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_d_o_m_exception.html#adc66e63938d6e6990c589005ddcb53bb">DOMException</a>
</li>
<li>doOnChange()
: <a class="el" href="classlog4cxx_1_1helpers_1_1_file_watchdog.html#a8954ea8a0bff2e80da8c1dbec6a621d2">FileWatchdog</a>
</li>
</ul>
</div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div>
  <div id="nav-path" class="navpath">
    <ul>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
    </body>
</html>
